32#ifndef _QORE_RUNTIMECONFIG_H
33#define _QORE_RUNTIMECONFIG_H
40class AbstractStatement;
41hashdecl QoreProgramLocation;
42hashdecl ThreadLocalProgramData;
44class qore_class_private;
63 DLLEXPORT
const QoreProgramLocation* getLocation()
const;
64 DLLEXPORT
void setLocation(
const QoreProgramLocation* loc);
66 DLLEXPORT
const AbstractStatement* getStatement()
const;
67 DLLEXPORT
void setStatement(
const AbstractStatement* stmt);
69 DLLEXPORT int64_t getParseOptions()
const;
70 DLLEXPORT
void setParseOptions(int64_t po);
72 DLLEXPORT ThreadLocalProgramData* getThreadLocalProgramData()
const;
73 DLLEXPORT
void setThreadLocalProgramData(ThreadLocalProgramData* tlpd);
78 DLLEXPORT
const qore_class_private* getClass()
const;
79 DLLEXPORT
void setClass(
const qore_class_private* cls);
84 DLLEXPORT
const QoreTypeInfo* getReturnTypeInfo()
const;
85 DLLEXPORT
void setReturnTypeInfo(
const QoreTypeInfo* return_type_info);
90 DLLEXPORT
int getElement()
const;
91 DLLEXPORT
void setElement(
int element);
93 DLLEXPORT
const QoreClosureBase* getClosureEnv()
const;
94 DLLEXPORT
void setClosureEnv(
const QoreClosureBase* closure_env);
96 DLLEXPORT
bool hasThreadLocalData()
const;
97 DLLEXPORT
bool isValid()
const;
104 DLLEXPORT Impl& implRef();
105 DLLEXPORT
const Impl& implRef()
const;
the implementation of Qore's object data type, reference counted, dynamically-allocated only
Definition QoreObject.h:61
supports parsing and executing Qore-language code, reference counted, dynamically-allocated only
Definition QoreProgram.h:133
Stack location element abstract class.
Definition ExceptionSink.h:426
RAII helper to temporarily change closure environment in RuntimeConfig.
Definition RuntimeConfig.h:225
RAII helper to temporarily change implicit element in RuntimeConfig.
Definition RuntimeConfig.h:244
RAII helper to manage RuntimeConfig and sync on destruction.
Definition RuntimeConfig.h:165
Runtime configuration passed through the evaluation call chain.
Definition RuntimeConfig.h:49
friend RuntimeConfig & rc_get_tls_ref()
Get a direct reference to the thread-local RuntimeConfig.
friend RuntimeConfig rc_get_current()
Get the current runtime configuration from thread-local storage.
friend RuntimeConfig rc_get_parse_time()
Get a minimal RuntimeConfig for parse-time constant folding.
friend void rc_sync_to_thread(const RuntimeConfig &rc)
Sync runtime config changes back to thread-local storage.
friend RuntimeConfig & rc_get_current_ref()
Get a reference to the thread-local RuntimeConfig updated with current values.
RAII helper to temporarily change location in RuntimeConfig.
Definition RuntimeConfig.h:184
RAII helper to temporarily change object/class context in RuntimeConfig.
Definition RuntimeConfig.h:209
RAII helper to push/pop stack location in RuntimeConfig and sync to TLS.
Definition RuntimeConfig.h:265
uint64_t q_rt_flags_t
runtime code execution flags
Definition common.h:270
DLLEXPORT QoreProgram * getProgram()
returns the current QoreProgram