Qore Programming Language 1.14.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