Qore Programming Language 2.0.0
Loading...
Searching...
No Matches
FunctionCallReferenceNode Class Reference

a call reference to a user function More...

#include <CallReferenceNode.h>

Inheritance diagram for FunctionCallReferenceNode:
[legend]
Collaboration diagram for FunctionCallReferenceNode:
[legend]

Public Member Methods

virtual DLLLOCAL QoreValue execValue (const QoreListNode *args, ExceptionSink *xsink) const
 pure virtual function for executing the function reference
 
- Public Member Methods inherited from LocalFunctionCallReferenceNode
virtual DLLLOCAL QoreFunction * getFunction ()
 Returns the internal function object, if any; can return nullptr.
 
virtual DLLLOCAL bool is_equal_hard (const AbstractQoreNode *v, ExceptionSink *xsink) const
 returns true if the other node is the same value
 
virtual DLLLOCAL bool is_equal_soft (const AbstractQoreNode *v, ExceptionSink *xsink) const
 returns true if the other node is the same value
 

Private Member Methods

virtual DLLLOCAL bool derefImpl (ExceptionSink *xsink)
 Called when the strong reference count reaches zero.
 
- Private Member Methods inherited from LocalFunctionCallReferenceNode
virtual DLLLOCAL QoreValue evalImpl (bool &needs_deref, ExceptionSink *xsink) const
 this function should never be called for function references; this function should never be called directly
 

Detailed Description

a call reference to a user function

Member Function Documentation

◆ derefImpl()

virtual DLLLOCAL bool FunctionCallReferenceNode::derefImpl ( ExceptionSink xsink)
privatevirtual

Called when the strong reference count reaches zero.

This function must free all memory owned by the object; the weak reference count is decremented, and if it reaches zero, the object is deleted

Parameters
xsinkif an error occurs, the Qore-language exception information will be added here
Returns
always returns false

Reimplemented from ResolvedCallReferenceNode.

◆ execValue()

virtual DLLLOCAL QoreValue FunctionCallReferenceNode::execValue ( const QoreListNode args,
ExceptionSink xsink 
) const
virtual

pure virtual function for executing the function reference

executes the function reference and returns the value returned

Parameters
argsthe arguments to the function
xsinkany Qore-language exception thrown (and not handled) will be added here
Returns
a pointer to an AbstractQoreNode, the caller owns the reference count returned (can also be nullptr)

Reimplemented from LocalFunctionCallReferenceNode.


The documentation for this class was generated from the following file: