include/qore/params.h File Reference

(3401)

#include <qore/AbstractQoreNode.h>

Go to the source code of this file.

Functions

static int num_params (const QoreListNode *n)
 returns the number of arguments passed to the function
static const AbstractQoreNodeget_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 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 BinaryNodetest_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 QoreStringNodetest_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 QoreObjecttest_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 DateTimeNodetest_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 QoreHashNodetest_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 QoreListNodetest_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 ReferenceNodetest_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


Detailed Description

Contains inline functions for accessing function and class method arguments.

Function Documentation

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

Parameters:
n a pointer to the argument list
i the offset in the list to test (first element is offset 0)
Returns:
the argument in the position given or 0 if there is none

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

Parameters:
n a pointer to the argument list
i the offset in the list to test (first element is offset 0)
Returns:
the argument type in the position given or 0 if there is none

References AbstractQoreNode::getType(), NT_NOTHING, and QoreListNode::retrieve_entry().

static int num_params ( const QoreListNode n  )  [inline, static]

returns the number of arguments passed to the function

Parameters:
n a pointer to the argument list
Returns:
the number of arguments passed to the function

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

Parameters:
n a pointer to the argument list
i the offset in the list to test (first element is offset 0)
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

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

Parameters:
n a pointer to the argument list
i the offset in the list to test (first element is offset 0)
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

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

Parameters:
n a pointer to the argument list
i the offset in the list to test (first element is offset 0)
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

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

Parameters:
n a pointer to the argument list
i the offset in the list to test (first element is offset 0)
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

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

Parameters:
n a pointer to the argument list
i the offset in the list to test (first element is offset 0)
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

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

Parameters:
n a pointer to the argument list
i the offset in the list to test (first element is offset 0)
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

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

Parameters:
n a pointer to the argument list
i the offset in the list to test (first element is offset 0)
Returns:
true if the arugment position given is NOTHING

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

Parameters:
n a pointer to the argument list
i the offset in the list to test (first element is offset 0)
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

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

Parameters:
n a pointer to the argument list
i the offset in the list to test (first element is offset 0)
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

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

Parameters:
n a pointer to the argument list
i the offset in the list to test (first element is offset 0)
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

References AbstractQoreNode::getType(), NT_STRING, and QoreListNode::retrieve_entry().


doxygen