The Function class represents a function that is callable from XQuery code, and it gives access to the various properties that are specified in the declaration of the function within a Prolog. More...
#include <zorba/function.h>
Public Member Functions | |
void | addReference () const |
virtual void | free () |
virtual void | getAnnotations (std::vector< Annotation_t > &annotations) const =0 |
virtual size_t | getArity () const =0 |
virtual String | getLocalName () const =0 |
virtual Item | getQName () const =0 |
long | getRefCount () const |
virtual String | getURI () const =0 |
virtual bool | isBuiltin () const =0 |
virtual bool | isDeterministic () const =0 |
virtual bool | isExternal () const =0 |
virtual bool | isPrivate () const =0 |
virtual bool | isSequential () const =0 |
virtual bool | isUpdating () const =0 |
virtual bool | isVariadic () const =0 |
virtual bool | isXQuery () const =0 |
void | removeReference () |
virtual | ~Function () |
Destructor. | |
Protected Attributes | |
unsigned int | theRefCount |
The Function class represents a function that is callable from XQuery code, and it gives access to the various properties that are specified in the declaration of the function within a Prolog.
Instances of Function are returned by the StaticContext::findFunctions() method. To be mopre precise, StaticContext::findFunctions() returns smart pointers to Function objects. These smart pointers must be destroyed before the StaticContext object they were obtained from is destroyed.
Note: Builtin functions are not declared in the Prolog, but the same kind of properties exist for them as well. So, the Function class works for builtin functions as well.
Definition at line 45 of file function.h.
virtual zorba::Function::~Function | ( | ) | [inline, virtual] |
Destructor.
Definition at line 50 of file function.h.
void zorba::SmartObject::addReference | ( | ) | const [inline, inherited] |
Definition at line 40 of file smart_ptr.h.
virtual void zorba::SmartObject::free | ( | ) | [virtual, inherited] |
virtual void zorba::Function::getAnnotations | ( | std::vector< Annotation_t > & | annotations | ) | const [pure virtual] |
virtual size_t zorba::Function::getArity | ( | ) | const [pure virtual] |
virtual String zorba::Function::getLocalName | ( | ) | const [pure virtual] |
virtual Item zorba::Function::getQName | ( | ) | const [pure virtual] |
long zorba::SmartObject::getRefCount | ( | ) | const [inline, inherited] |
Definition at line 38 of file smart_ptr.h.
virtual String zorba::Function::getURI | ( | ) | const [pure virtual] |
virtual bool zorba::Function::isBuiltin | ( | ) | const [pure virtual] |
virtual bool zorba::Function::isDeterministic | ( | ) | const [pure virtual] |
virtual bool zorba::Function::isExternal | ( | ) | const [pure virtual] |
virtual bool zorba::Function::isPrivate | ( | ) | const [pure virtual] |
virtual bool zorba::Function::isSequential | ( | ) | const [pure virtual] |
virtual bool zorba::Function::isUpdating | ( | ) | const [pure virtual] |
virtual bool zorba::Function::isVariadic | ( | ) | const [pure virtual] |
virtual bool zorba::Function::isXQuery | ( | ) | const [pure virtual] |
void zorba::SmartObject::removeReference | ( | ) | [inline, inherited] |
Definition at line 42 of file smart_ptr.h.
unsigned int zorba::SmartObject::theRefCount [mutable, protected, inherited] |
Definition at line 27 of file smart_ptr.h.