Qore Programming Language Reference Manual
0.8.11.1
|
Variables | |
const | Qore::PO_ALLOW_BARE_REFS = PO_ALLOW_BARE_REFS |
Prohibits the use of the '$' character in variable names, method calls, and object member references. More... | |
const | Qore::PO_ASSUME_LOCAL = PO_ASSUME_LOCAL |
Assume local variable scope when variables are first referenced if no my or our is present. More... | |
const | Qore::PO_DEFAULT = PO_DEFAULT |
This option is the empty option, meaning no options are set. | |
const | Qore::PO_FREE_OPTIONS = PO_FREE_OPTIONS |
mask of options that have no effect on code access or code safety but just affect programming style More... | |
const | Qore::PO_IN_MODULE = PO_IN_MODULE |
Only set by the system when in a user module Program. More... | |
const | Qore::PO_LOCKDOWN = PO_LOCKDOWN |
Sets very restrictive access; this restriction is designed to allow code to only execute logic, no I/O, no threading, no external access. More... | |
const | Qore::PO_LOCK_WARNINGS = PO_LOCK_WARNINGS |
Disallows changes to the warning mask. More... | |
const | Qore::PO_NEW_STYLE = PO_NEW_STYLE |
Set a more C++ or Java type programming style; prohibits usage of the "$" character and also assumes local variable scope without my. More... | |
const | Qore::PO_NO_CHILD_PO_RESTRICTIONS = PO_NO_CHILD_PO_RESTRICTIONS |
Allows child program objects to have fewer parse restrictions (i.e. more capabilies) than the parent object. More... | |
const | Qore::PO_NO_CLASS_DEFS = PO_NO_CLASS_DEFS |
Disallows class definitions. More... | |
const | Qore::PO_NO_CONSTANT_DEFS = PO_NO_CONSTANT_DEFS |
Disallows constant definitions. More... | |
const | Qore::PO_NO_DATABASE = PO_NO_DATABASE |
Disallows access to database functionality. More... | |
const | Qore::PO_NO_EMBEDDED_LOGIC = PO_NO_EMBEDDED_LOGIC |
Prohibits embedded logic from being used. | |
const | Qore::PO_NO_EXTERNAL_ACCESS = PO_NO_EXTERNAL_ACCESS |
Prohibits any external access. More... | |
const | Qore::PO_NO_EXTERNAL_INFO = PO_NO_EXTERNAL_INFO |
Disallows access to functionality that provides information about the computing environment. More... | |
const | Qore::PO_NO_EXTERNAL_PROCESS = PO_NO_EXTERNAL_PROCESS |
Disallows any access to external processes (with system(), backquote(), exec(), etc) More... | |
const | Qore::PO_NO_FILESYSTEM = PO_NO_FILESYSTEM |
Disallows access to the filesystem. More... | |
const | Qore::PO_NO_GLOBAL_VARS = PO_NO_GLOBAL_VARS |
Disallows the use of global variables. More... | |
const | Qore::PO_NO_GUI = PO_NO_GUI |
Disallows access to functionality that draws graphics to the display. More... | |
const | Qore::PO_NO_INHERIT_GLOBAL_VARS = PO_NO_INHERIT_GLOBAL_VARS |
Precludes global variables from being inherited into the new Program object. | |
const | Qore::PO_NO_INHERIT_USER_FUNC_VARIANTS = PO_NO_INHERIT_USER_FUNC_VARIANTS |
Precludes public user function variants from being inherited into the new Program object. | |
const | Qore::PO_NO_IO = PO_NO_IO |
Prohibits all terminal and file I/O and GUI operations. More... | |
const | Qore::PO_NO_LOCALE_CONTROL = PO_NO_LOCALE_CONTROL |
Disallows access to functionality that can change locale parameters. More... | |
const | Qore::PO_NO_MODULES = PO_NO_MODULES |
Disallows loading modules with the %requires directive or at runtime with load_module() More... | |
const | Qore::PO_NO_NAMESPACE_DEFS = PO_NO_NAMESPACE_DEFS |
Disallows new namespace definitions. More... | |
const | Qore::PO_NO_NETWORK = PO_NO_NETWORK |
Disallows access to network functionality. More... | |
const | Qore::PO_NO_NEW = PO_NO_NEW |
Disallows use of the new operator. More... | |
const | Qore::PO_NO_PROCESS_CONTROL = PO_NO_PROCESS_CONTROL |
Disallows access to functions that would affect the current process (exit(), exec(), fork(), etc) More... | |
const | Qore::PO_NO_SUBROUTINE_DEFS = PO_NO_SUBROUTINE_DEFS |
Disallows subroutine (function) definitions. More... | |
const | Qore::PO_NO_SYSTEM_CLASSES = PO_NO_SYSTEM_CLASSES |
Prohibits system classes from being imported into the new Program object. | |
const | Qore::PO_NO_SYSTEM_FUNC_VARIANTS = PO_NO_SYSTEM_FUNC_VARIANTS |
Prohibits builtin/system function variants from being imported into the new Program object. | |
const | Qore::PO_NO_TERMINAL_IO = PO_NO_TERMINAL_IO |
Disallows access to reading from and/or writing to the terminal. More... | |
const | Qore::PO_NO_THREADS = PO_NO_THREADS |
Prohibits access to all threading information. More... | |
const | Qore::PO_NO_THREAD_CLASSES = PO_NO_THREAD_CLASSES |
Disallows access to any thread classes. More... | |
const | Qore::PO_NO_THREAD_CONTROL = PO_NO_THREAD_CONTROL |
Disallows access to any thread-control functions and thread-relevant statements and operators (for example the background operator and the thread_exit statement) More... | |
const | Qore::PO_NO_THREAD_INFO = PO_NO_THREAD_INFO |
Disallows access to functionality that provides information about threading. More... | |
const | Qore::PO_NO_TOP_LEVEL_STATEMENTS = PO_NO_TOP_LEVEL_STATEMENTS |
Disallows top level code. More... | |
const | Qore::PO_NO_USER_CLASSES = PO_NO_USER_CLASSES |
Prohibits user classes from being imported into the new Program object. | |
const | Qore::PO_POSITIVE_OPTIONS = PO_POSITIVE_OPTIONS |
mask of all parse options allowing for more freedom (instead of less) More... | |
const | Qore::PO_REQUIRE_OUR = PO_REQUIRE_OUR |
Requires global variables to be declared with our before use. More... | |
const | Qore::PO_REQUIRE_PROTOTYPES = PO_REQUIRE_PROTOTYPES |
Requires all function and method parameters and return types to have type declarations. More... | |
const | Qore::PO_REQUIRE_TYPES = PO_REQUIRE_TYPES |
Requires all function and method parameters, return types, variables, and object members to have type declarations. More... | |
const | Qore::PO_STRICT_ARGS = PO_STRICT_ARGS |
Prohibits access to builtin functions and methods flagged with RT_NOOP and also causes errors to be raised if excess arguments are given to functions that do not access excess arguments. More... | |
const | Qore::PO_STRICT_BOOLEAN_EVAL = PO_STRICT_BOOLEAN_EVAL |
Sets strict mathematical boolean evaluation runtime mode (the qore default prior to v0.8.6) More... | |
These are the possible values that can be or'ed together to set Program parse options
const Qore::PO_ALLOW_BARE_REFS = PO_ALLOW_BARE_REFS |
Prohibits the use of the '$' character in variable names, method calls, and object member references.
This option should probably be named "PO_REQUIRE_BARE_REFS"
as it is an error to use the "$"
character when this option is set
const Qore::PO_ASSUME_LOCAL = PO_ASSUME_LOCAL |
Assume local variable scope when variables are first referenced if no my or
our is
present.
This option is set implicitly with PO_NEW_STYLE
const Qore::PO_FREE_OPTIONS = PO_FREE_OPTIONS |
mask of options that have no effect on code access or code safety but just affect programming style
made up of PO_ALLOW_BARE_REFS | PO_ASSUME_LOCAL
const Qore::PO_IN_MODULE = PO_IN_MODULE |
Only set by the system when in a user module Program.
const Qore::PO_LOCK_WARNINGS = PO_LOCK_WARNINGS |
Disallows changes to the warning mask.
const Qore::PO_LOCKDOWN = PO_LOCKDOWN |
Sets very restrictive access; this restriction is designed to allow code to only execute logic, no I/O, no threading, no external access.
made up of PO_NO_EXTERNAL_ACCESS | PO_NO_THREADS | PO_NO_IO
const Qore::PO_NEW_STYLE = PO_NEW_STYLE |
Set a more C++ or Java type programming style; prohibits usage of the "$"
character and also assumes local variable scope without my.
made up of PO_ALLOW_BARE_REFS | PO_ASSUME_LOCAL
const Qore::PO_NO_CHILD_PO_RESTRICTIONS = PO_NO_CHILD_PO_RESTRICTIONS |
Allows child program objects to have fewer parse restrictions (i.e. more capabilies) than the parent object.
const Qore::PO_NO_CLASS_DEFS = PO_NO_CLASS_DEFS |
Disallows class definitions.
const Qore::PO_NO_CONSTANT_DEFS = PO_NO_CONSTANT_DEFS |
Disallows constant definitions.
const Qore::PO_NO_DATABASE = PO_NO_DATABASE |
Disallows access to database functionality.
const Qore::PO_NO_EXTERNAL_ACCESS = PO_NO_EXTERNAL_ACCESS |
Prohibits any external access.
made up of PO_NO_PROCESS_CONTROL | PO_NO_NETWORK | PO_NO_FILESYSTEM | PO_NO_DATABASE | PO_NO_EXTERNAL_INFO | PO_NO_EXTERNAL_PROCESS
const Qore::PO_NO_EXTERNAL_INFO = PO_NO_EXTERNAL_INFO |
Disallows access to functionality that provides information about the computing environment.
const Qore::PO_NO_EXTERNAL_PROCESS = PO_NO_EXTERNAL_PROCESS |
Disallows any access to external processes (with system(), backquote(), exec(), etc)
const Qore::PO_NO_FILESYSTEM = PO_NO_FILESYSTEM |
Disallows access to the filesystem.
const Qore::PO_NO_GLOBAL_VARS = PO_NO_GLOBAL_VARS |
Disallows the use of global variables.
const Qore::PO_NO_GUI = PO_NO_GUI |
Disallows access to functionality that draws graphics to the display.
const Qore::PO_NO_IO = PO_NO_IO |
Prohibits all terminal and file I/O and GUI operations.
made up of PO_NO_GUI | PO_NO_TERMINAL_IO | PO_NO_FILESYSTEM | PO_NO_NETWORK | PO_NO_DATABASE
const Qore::PO_NO_LOCALE_CONTROL = PO_NO_LOCALE_CONTROL |
Disallows access to functionality that can change locale parameters.
const Qore::PO_NO_MODULES = PO_NO_MODULES |
Disallows loading modules with the %requires directive or at runtime with load_module()
const Qore::PO_NO_NAMESPACE_DEFS = PO_NO_NAMESPACE_DEFS |
Disallows new namespace definitions.
const Qore::PO_NO_NETWORK = PO_NO_NETWORK |
Disallows access to network functionality.
const Qore::PO_NO_NEW = PO_NO_NEW |
Disallows use of the new operator.
Note that objects can still be instantiated with syntax like:
const Qore::PO_NO_PROCESS_CONTROL = PO_NO_PROCESS_CONTROL |
Disallows access to functions that would affect the current process (exit(), exec(), fork(), etc)
const Qore::PO_NO_SUBROUTINE_DEFS = PO_NO_SUBROUTINE_DEFS |
Disallows subroutine (function) definitions.
const Qore::PO_NO_TERMINAL_IO = PO_NO_TERMINAL_IO |
Disallows access to reading from and/or writing to the terminal.
const Qore::PO_NO_THREAD_CLASSES = PO_NO_THREAD_CLASSES |
Disallows access to any thread classes.
const Qore::PO_NO_THREAD_CONTROL = PO_NO_THREAD_CONTROL |
Disallows access to any thread-control functions and thread-relevant statements and operators (for example the background operator and the thread_exit statement)
const Qore::PO_NO_THREAD_INFO = PO_NO_THREAD_INFO |
Disallows access to functionality that provides information about threading.
const Qore::PO_NO_THREADS = PO_NO_THREADS |
Prohibits access to all threading information.
made up of PO_NO_THREAD_CONTROL | PO_NO_THREAD_CLASSES | PO_NO_THREAD_INFO
const Qore::PO_NO_TOP_LEVEL_STATEMENTS = PO_NO_TOP_LEVEL_STATEMENTS |
Disallows top level code.
const Qore::PO_POSITIVE_OPTIONS = PO_POSITIVE_OPTIONS |
mask of all parse options allowing for more freedom (instead of less)
made up of only PO_NO_CHILD_PO_RESTRICTIONS
const Qore::PO_REQUIRE_OUR = PO_REQUIRE_OUR |
Requires global variables to be declared with our before use.
const Qore::PO_REQUIRE_PROTOTYPES = PO_REQUIRE_PROTOTYPES |
Requires all function and method parameters and return types to have type declarations.
However, variable declarations and object members are not required to have type declarations
const Qore::PO_REQUIRE_TYPES = PO_REQUIRE_TYPES |
Requires all function and method parameters, return types, variables, and object members to have type declarations.
const Qore::PO_STRICT_ARGS = PO_STRICT_ARGS |
Prohibits access to builtin functions and methods flagged with RT_NOOP and also causes errors to be raised if excess arguments are given to functions that do not access excess arguments.
This option is set implicitly with PO_REQUIRE_TYPES
const Qore::PO_STRICT_BOOLEAN_EVAL = PO_STRICT_BOOLEAN_EVAL |
Sets strict mathematical boolean evaluation runtime mode (the qore default prior to v0.8.6)