#include <qore/AbstractQoreNode.h>
Go to the source code of this file.
Defines | |
#define | HARD_QORE_PARAM(name, Type, list, i) Type *name = get_hard_param<Type>(list, i) |
returns a hard typed parameter | |
#define | HARD_QORE_INT(list, i) get_hard_param<const QoreBigIntNode>(list, i)->val |
returns an int64 from a hard typed int param | |
#define | HARD_QORE_FLOAT(list, i) get_hard_param<const QoreFloatNode>(list, i)->f |
returns a double from a hard typed float param | |
#define | HARD_QORE_BOOL(list, i) get_hard_param<const QoreBoolNode>(list, i)->getValue() |
returns a bool from a hard typed bool param | |
#define | HARD_QORE_STRING(list, i) get_hard_param<const QoreStringNode>(list, i) |
returns a const QoreStringNode* from a hard typed string param | |
#define | HARD_QORE_DATE(list, i) get_hard_param<const DateTimeNode>(list, i) |
returns a const DateTimeNode* from a hard typed date param | |
#define | HARD_QORE_BINARY(list, i) get_hard_param<const BinaryNode>(list, i) |
returns a const BinaryNode* from a hard typed binary param | |
#define | HARD_QORE_LIST(list, i) get_hard_param<const QoreListNode>(list, i) |
returns a const QoreListNode* from a hard typed list param | |
#define | HARD_QORE_HASH(list, i) get_hard_param<const QoreHashNode>(list, i) |
returns a const QoreHashNode* from a hard typed hash param | |
#define | HARD_QORE_REF(list, i) get_hard_param<const ReferenceNode>(list, i) |
returns a const QoreHashNode* from a hard typed hash param | |
#define | HARD_QORE_OBJECT(list, i) const_cast<QoreObject *>(get_hard_param<const QoreObject>(list, i)) |
returns a QoreObject* from a hard typed object param | |
Functions | |
static unsigned | num_args (const QoreListNode *n) |
returns the number of arguments passed to the function | |
static unsigned | num_params (const QoreListNode *n) |
returns the number of arguments passed to the function | |
static const AbstractQoreNode * | get_param (const QoreListNode *n, qore_size_t i) |
returns the argument in the position given or 0 if there is none | |
static qore_type_t | get_param_type (const QoreListNode *n, qore_size_t i) |
returns the argument type in the position given or 0 if there is none | |
static int | get_int_param (const QoreListNode *n, qore_size_t i) |
returns an integer corresponding to the argument given or 0 if there is none | |
static int64 | get_bigint_param (const QoreListNode *n, qore_size_t i) |
returns a 64-bit integer corresponding to the argument given or 0 if there is none | |
static int | get_int_param_with_default (const QoreListNode *n, qore_size_t i, int def) |
returns an integer corresponding to the argument given or a default value if there is none | |
static int64 | get_bigint_param_with_default (const QoreListNode *n, qore_size_t i, int64 def) |
returns a 64-bit integer corresponding to the argument given or a default value if there is none | |
static double | get_float_param (const QoreListNode *n, qore_size_t i) |
returns a float corresponding to the argument given or 0 if there is none | |
static bool | get_bool_param (const QoreListNode *n, qore_size_t i) |
returns a boolean value corresponding to the argument given or false if there is none | |
static const BinaryNode * | test_binary_param (const QoreListNode *n, qore_size_t i) |
returns a const BinaryNode pointer for the argument position given or 0 if there is no argument there or if the argument is not a BinaryNode | |
static const QoreStringNode * | test_string_param (const QoreListNode *n, qore_size_t i) |
returns a const QoreStringNode pointer for the argument position given or 0 if there is no argument there or if the argument is not a QoreStringNode | |
static QoreObject * | test_object_param (const QoreListNode *n, qore_size_t i) |
returns a QoreObject pointer for the argument position given or 0 if there is no argument there or if the argument is not a QoreObject | |
static const DateTimeNode * | test_date_param (const QoreListNode *n, qore_size_t i) |
returns a DateTimeNode pointer for the argument position given or 0 if there is no argument there or if the argument is not a DateTimeNode | |
static const QoreHashNode * | test_hash_param (const QoreListNode *n, qore_size_t i) |
returns a QoreHashNode pointer for the argument position given or 0 if there is no argument there or if the argument is not a QoreHashNode | |
static const QoreListNode * | test_list_param (const QoreListNode *n, qore_size_t i) |
returns a QoreListNode pointer for the argument position given or 0 if there is no argument there or if the argument is not a QoreListNode | |
static const ResolvedCallReferenceNode * | test_callref_param (const QoreListNode *n, qore_size_t i) |
returns a ResolvedCallReferenceNode pointer for the argument position given or 0 if there is no argument there or if the argument is not a ResolvedCallReferenceNode | |
static const ResolvedCallReferenceNode * | test_funcref_param (const QoreListNode *n, qore_size_t i) |
returns a ResolvedCallReferenceNode pointer for the argument position given or 0 if there is no argument there or if the argument is not a ResolvedCallReferenceNode | |
static const ReferenceNode * | test_reference_param (const QoreListNode *n, qore_size_t i) |
returns a ReferenceNode pointer for the argument position given or 0 if there is no argument there or if the argument is not a ReferenceNode | |
static bool | test_nothing_param (const QoreListNode *n, qore_size_t i) |
returns true if the arugment position given is NOTHING | |
static const QoreEncoding * | get_encoding_param (const QoreListNode *n, qore_size_t i, const QoreEncoding *def=QCS_DEFAULT) |
returns the QoreEncoding corresponding to the string passed or a default encoding | |
template<typename T > | |
static T * | get_hard_param (const QoreListNode *n, qore_size_t i) |
returns the given type for hard typed parameters | |
static const QoreEncoding * | get_hard_qore_encoding_param (const QoreListNode *n, qore_size_t i) |
returns the QoreEncoding corresponding to the string passed or a default encoding |
Contains inline functions for accessing function and class method arguments.
static const AbstractQoreNode* get_param | ( | const QoreListNode * | n, | |
qore_size_t | i | |||
) | [inline, static] |
returns the argument in the position given or 0 if there is none
n | a pointer to the argument list | |
i | the offset in the list to test (first element is offset 0) |
References is_nothing(), and QoreListNode::retrieve_entry().
static qore_type_t get_param_type | ( | const QoreListNode * | n, | |
qore_size_t | i | |||
) | [inline, static] |
returns the argument type in the position given or 0 if there is none
n | a pointer to the argument list | |
i | the offset in the list to test (first element is offset 0) |
References AbstractQoreNode::getType(), NT_NOTHING, and QoreListNode::retrieve_entry().
static unsigned num_args | ( | const QoreListNode * | n | ) | [inline, static] |
returns the number of arguments passed to the function
n | a pointer to the argument list |
References QoreListNode::size().
static unsigned num_params | ( | const QoreListNode * | n | ) | [inline, static] |
returns the number of arguments passed to the function
n | a pointer to the argument list |
References QoreListNode::size().
static const BinaryNode* test_binary_param | ( | const QoreListNode * | n, | |
qore_size_t | i | |||
) | [inline, static] |
returns a const BinaryNode pointer for the argument position given or 0 if there is no argument there or if the argument is not a BinaryNode
n | a pointer to the argument list | |
i | the offset in the list to test (first element is offset 0) |
References AbstractQoreNode::getType(), NT_BINARY, and QoreListNode::retrieve_entry().
static const ResolvedCallReferenceNode* test_callref_param | ( | const QoreListNode * | n, | |
qore_size_t | i | |||
) | [inline, static] |
returns a ResolvedCallReferenceNode pointer for the argument position given or 0 if there is no argument there or if the argument is not a ResolvedCallReferenceNode
n | a pointer to the argument list | |
i | the offset in the list to test (first element is offset 0) |
References AbstractQoreNode::getType(), NT_FUNCREF, NT_RUNTIME_CLOSURE, and QoreListNode::retrieve_entry().
Referenced by test_funcref_param().
static const DateTimeNode* test_date_param | ( | const QoreListNode * | n, | |
qore_size_t | i | |||
) | [inline, static] |
returns a DateTimeNode pointer for the argument position given or 0 if there is no argument there or if the argument is not a DateTimeNode
n | a pointer to the argument list | |
i | the offset in the list to test (first element is offset 0) |
References AbstractQoreNode::getType(), NT_DATE, and QoreListNode::retrieve_entry().
static const ResolvedCallReferenceNode* test_funcref_param | ( | const QoreListNode * | n, | |
qore_size_t | i | |||
) | [inline, static] |
returns a ResolvedCallReferenceNode pointer for the argument position given or 0 if there is no argument there or if the argument is not a ResolvedCallReferenceNode
n | a pointer to the argument list | |
i | the offset in the list to test (first element is offset 0) |
References test_callref_param().
static const QoreHashNode* test_hash_param | ( | const QoreListNode * | n, | |
qore_size_t | i | |||
) | [inline, static] |
returns a QoreHashNode pointer for the argument position given or 0 if there is no argument there or if the argument is not a QoreHashNode
n | a pointer to the argument list | |
i | the offset in the list to test (first element is offset 0) |
References AbstractQoreNode::getType(), NT_HASH, and QoreListNode::retrieve_entry().
static const QoreListNode* test_list_param | ( | const QoreListNode * | n, | |
qore_size_t | i | |||
) | [inline, static] |
returns a QoreListNode pointer for the argument position given or 0 if there is no argument there or if the argument is not a QoreListNode
n | a pointer to the argument list | |
i | the offset in the list to test (first element is offset 0) |
References AbstractQoreNode::getType(), NT_LIST, and QoreListNode::retrieve_entry().
static bool test_nothing_param | ( | const QoreListNode * | n, | |
qore_size_t | i | |||
) | [inline, static] |
returns true if the arugment position given is NOTHING
n | a pointer to the argument list | |
i | the offset in the list to test (first element is offset 0) |
References is_nothing(), and QoreListNode::retrieve_entry().
static QoreObject* test_object_param | ( | const QoreListNode * | n, | |
qore_size_t | i | |||
) | [inline, static] |
returns a QoreObject pointer for the argument position given or 0 if there is no argument there or if the argument is not a QoreObject
QoreObjects are returned not as "const" because they are unique and can always be manipulated
n | a pointer to the argument list | |
i | the offset in the list to test (first element is offset 0) |
References AbstractQoreNode::getType(), NT_OBJECT, and QoreListNode::retrieve_entry().
static const ReferenceNode* test_reference_param | ( | const QoreListNode * | n, | |
qore_size_t | i | |||
) | [inline, static] |
returns a ReferenceNode pointer for the argument position given or 0 if there is no argument there or if the argument is not a ReferenceNode
Note that this will also return a value for a closure; this is a synonym for test_funcref_param
n | a pointer to the argument list | |
i | the offset in the list to test (first element is offset 0) |
References AbstractQoreNode::getType(), NT_REFERENCE, and QoreListNode::retrieve_entry().
static const QoreStringNode* test_string_param | ( | const QoreListNode * | n, | |
qore_size_t | i | |||
) | [inline, static] |
returns a const QoreStringNode pointer for the argument position given or 0 if there is no argument there or if the argument is not a QoreStringNode
n | a pointer to the argument list | |
i | the offset in the list to test (first element is offset 0) |
References AbstractQoreNode::getType(), NT_STRING, and QoreListNode::retrieve_entry().
Referenced by get_encoding_param().