![]() |
Qore Programming Language 1.18.0
|
Go to the source code of this file.
Classes | |
| class | QoreExternalConstant |
| external wrapper class for constants More... | |
| class | QoreExternalMemberBase |
| external wrapper base class for class and hashdecl members More... | |
| class | QoreExternalMemberVarBase |
| external wrapper base class for class members More... | |
| class | QoreExternalMethodVariant |
| external wrapper class for method variants More... | |
| class | QoreExternalNormalMember |
| external wrapper base class for class normal members More... | |
| class | QoreExternalProgramLocation |
| external wrapper class for source code location information More... | |
| class | QoreExternalStaticMember |
| external wrapper base class for class static members More... | |
| class | QoreExternalVariant |
| external wrapper class for function and call variants More... | |
Functions | |
| DLLEXPORT QoreValue | qore_type_assign_value (const QoreTypeInfo *t, const QoreValue value, ExceptionSink *xsink) |
| processes the given value by the given type and returns the result; a Qore-language exception is thrown if the value is not assignable to the type More... | |
| DLLEXPORT bool | qore_type_can_convert_to_scalar (const QoreTypeInfo *ti) |
| returns true if the type's value can be converted to a scalar; the argument may be nullptr meaning no type restrictions | |
| DLLEXPORT bool | qore_type_equal (const QoreTypeInfo *ti1, const QoreTypeInfo *ti2) |
| returns true if the types are equal; either argument may be nullptr meaning no type restrictions | |
| DLLEXPORT QoreHashNode * | qore_type_get_accept_types (const QoreTypeInfo *t) |
| returns a hash of base types accepted by the type More... | |
| DLLEXPORT qore_type_t | qore_type_get_base_type (const QoreTypeInfo *t) |
| returns the base type code for the type or NT_ALL for those that don't have types More... | |
| DLLEXPORT QoreValue | qore_type_get_default_value (const QoreTypeInfo *ti) |
| returns the default value of the type (if any); the caller owns any reference returned; the argument may be nullptr meaning no type restrictions | |
| DLLEXPORT const char * | qore_type_get_name (const QoreTypeInfo *ti) |
| returns the name of the type; the argument may be nullptr meaning no type restrictions | |
| DLLEXPORT const char * | qore_type_get_path (const QoreTypeInfo *ti) |
| returns the full namespace path of the type; the argument may be nullptr meaning no type restrictions More... | |
| DLLEXPORT QoreHashNode * | qore_type_get_return_types (const QoreTypeInfo *t) |
| returns a hash of base types returned by the type More... | |
| DLLEXPORT bool | qore_type_has_default_value (const QoreTypeInfo *ti) |
| returns true if the type has a default value; the argument may be nullptr meaning no type restrictions | |
| DLLEXPORT int | qore_type_is_assignable_from (const QoreTypeInfo *t, QoreValue value) |
| returns true if the given type can be assigned from the given value More... | |
| DLLEXPORT bool | qore_type_is_assignable_from (const QoreTypeInfo *ti1, const QoreTypeInfo *ti2) |
| returns true if ti2's return type is compatible with ti1 input (i.e. ti1 is assignable from ti2) More... | |
| DLLEXPORT bool | qore_type_is_assignable_from (const QoreTypeInfo *ti1, const QoreTypeInfo *ti2, bool &may_not_match) |
| returns true if ti2's return type is compatible with ti1 input (i.e. ti1 is assignable from ti2) More... | |
| DLLEXPORT bool | qore_type_is_input_output_compatible (const QoreTypeInfo *ti1, const QoreTypeInfo *ti2) |
| returns true if the types are compatible with inputs and outputs | |
| DLLEXPORT bool | qore_type_is_output_compatible (const QoreTypeInfo *ti1, const QoreTypeInfo *ti2) |
| returns true if ti2's return type is compatible with ti1's; either argument may be nullptr meaning no type restrictions | |
external reflection API definitions
| DLLEXPORT QoreValue qore_type_assign_value | ( | const QoreTypeInfo * | t, |
| const QoreValue | value, | ||
| ExceptionSink * | xsink | ||
| ) |
processes the given value by the given type and returns the result; a Qore-language exception is thrown if the value is not assignable to the type
| DLLEXPORT QoreHashNode * qore_type_get_accept_types | ( | const QoreTypeInfo * | t | ) |
returns a hash of base types accepted by the type
| DLLEXPORT qore_type_t qore_type_get_base_type | ( | const QoreTypeInfo * | t | ) |
returns the base type code for the type or NT_ALL for those that don't have types
| DLLEXPORT const char * qore_type_get_path | ( | const QoreTypeInfo * | ti | ) |
returns the full namespace path of the type; the argument may be nullptr meaning no type restrictions
| DLLEXPORT QoreHashNode * qore_type_get_return_types | ( | const QoreTypeInfo * | t | ) |
returns a hash of base types returned by the type
| DLLEXPORT int qore_type_is_assignable_from | ( | const QoreTypeInfo * | t, |
| QoreValue | value | ||
| ) |
returns true if the given type can be assigned from the given value
| t | the type to check assignability to |
| value | the value to check if it can be assigned to t |
The type argument t may be nullptr meaning no type restrictions
| DLLEXPORT bool qore_type_is_assignable_from | ( | const QoreTypeInfo * | ti1, |
| const QoreTypeInfo * | ti2 | ||
| ) |
returns true if ti2's return type is compatible with ti1 input (i.e. ti1 is assignable from ti2)
| ti1 | the type to check assignability to |
| ti2 | the type to see if it can be assigned to ti1 |
either argument may be nullptr meaning no type restrictions
| DLLEXPORT bool qore_type_is_assignable_from | ( | const QoreTypeInfo * | ti1, |
| const QoreTypeInfo * | ti2, | ||
| bool & | may_not_match | ||
| ) |
returns true if ti2's return type is compatible with ti1 input (i.e. ti1 is assignable from ti2)
| ti1 | the type to check assignability to |
| ti2 | the type to see if it can be assigned to ti1 |
| may_not_match | an output variable, if true then the assignment is not guaranteed to succeed and may fail at runtime |
either argument may be nullptr meaning no type restrictions