JODA  0.13.1 (59b41972)
JSON On-Demand Analysis
Public Member Functions
joda::query::UnaryPointerAcceptProvider< Calc > Class Template Reference

#include <UnaryPointerAcceptProvider.h>

Inheritance diagram for joda::query::UnaryPointerAcceptProvider< Calc >:
[legend]
Collaboration diagram for joda::query::UnaryPointerAcceptProvider< Calc >:
[legend]

Public Member Functions

 UnaryPointerAcceptProvider (std::vector< std::unique_ptr< IValueProvider >> &&parameters)
 
IValueType getReturnType () const override
 
std::string getName () const override
 
std::string toString () const override
 
std::unique_ptr< IValueProviderduplicate () const override
 
bool isAtom () const override
 
const RJValuegetValue (const RapidJsonDocument &json, RJMemoryPoolAlloc &alloc) const override
 
RJValue getAtomValue (const RapidJsonDocument &json, RJMemoryPoolAlloc &alloc) const override
 
bool isConst () const override
 
void getAttributes (std::vector< std::string > &vec) const override
 
- Public Member Functions inherited from joda::query::IValueProvider
 IValueProvider (std::vector< std::unique_ptr< IValueProvider >> &&parameters)
 
 IValueProvider ()
 
virtual ~IValueProvider ()=default
 
virtual bool isString () const
 
virtual bool isNumber () const
 
virtual bool isBool () const
 
virtual bool isObject () const
 
virtual bool isArray () const
 
virtual bool isNull () const
 
virtual bool isAny () const
 
virtual std::vector< std::string > getAttributes () const
 
bool equal (IValueProvider *other, const RapidJsonDocument &json) const
 
virtual bool comparable () const
 
virtual bool equalizable () const
 

Additional Inherited Members

- Static Public Member Functions inherited from joda::query::IValueProvider
static void replaceConstSubexpressions (std::unique_ptr< IValueProvider > &val)
 
static bool constBoolCheck (std::unique_ptr< IValueProvider > &val)
 
- Protected Member Functions inherited from joda::query::IValueProvider
bool getParamString (std::string &ret, const std::unique_ptr< IValueProvider > &val, const RapidJsonDocument &json) const
 
void checkParamSize (unsigned int expected)
 
void checkMinParamSize (unsigned int expected)
 
void checkParamType (unsigned int i, IValueType expected)
 
void checkOptionalParamType (unsigned int i, IValueType expected)
 
std::vector< std::unique_ptr< IValueProvider > > duplicateParameters () const
 
std::string getParameterStringRepresentation () const
 
- Protected Attributes inherited from joda::query::IValueProvider
std::vector< std::unique_ptr< IValueProvider > > params
 

Constructor & Destructor Documentation

◆ UnaryPointerAcceptProvider()

template<class Calc >
joda::query::UnaryPointerAcceptProvider< Calc >::UnaryPointerAcceptProvider ( std::vector< std::unique_ptr< IValueProvider >> &&  parameters)
inlineexplicit
Here is the call graph for this function:

Member Function Documentation

◆ duplicate()

template<class Calc >
std::unique_ptr<IValueProvider> joda::query::UnaryPointerAcceptProvider< Calc >::duplicate ( ) const
inlineoverridevirtual
Returns
a pointer to a duplicate of the IValueProvider

Implements joda::query::IValueProvider.

Here is the call graph for this function:

◆ getAtomValue()

template<class Calc >
RJValue joda::query::UnaryPointerAcceptProvider< Calc >::getAtomValue ( const RapidJsonDocument json,
RJMemoryPoolAlloc alloc 
) const
inlineoverridevirtual

Gets an atomic value

Attention
isAtom() has to return true. If not this will result in undefined behavior
Parameters
jsonThe Rapidjsondocument to retrieve values from. (Or an empty RapidJsonDocument for const values)
allocA MemoryPoolAllocator to create the values with
Returns
a value containing the result

Implements joda::query::IValueProvider.

Here is the call graph for this function:

◆ getAttributes()

template<class Calc >
void joda::query::UnaryPointerAcceptProvider< Calc >::getAttributes ( std::vector< std::string > &  vec) const
inlineoverridevirtual

Fills a list with all used document attributes

Parameters
veclist to fill

Reimplemented from joda::query::IValueProvider.

◆ getName()

template<class Calc >
std::string joda::query::UnaryPointerAcceptProvider< Calc >::getName ( ) const
inlineoverridevirtual
Returns
The function name

Implements joda::query::IValueProvider.

◆ getReturnType()

template<class Calc >
IValueType joda::query::UnaryPointerAcceptProvider< Calc >::getReturnType ( ) const
inlineoverridevirtual
Returns
The type returned by the function

Implements joda::query::IValueProvider.

◆ getValue()

template<class Calc >
const RJValue* joda::query::UnaryPointerAcceptProvider< Calc >::getValue ( const RapidJsonDocument json,
RJMemoryPoolAlloc alloc 
) const
inlineoverridevirtual

Gets an value

Attention
isAtom() has to return false. If not this will result in undefined behavior
Parameters
jsonThe Rapidjsondocument to retrieve values from. (Or an empty RapidJsonDocument for const values)
allocA MemoryPoolAllocator to create the values with
Returns
a value-pointer containing the result

Implements joda::query::IValueProvider.

Here is the call graph for this function:

◆ isAtom()

template<class Calc >
bool joda::query::UnaryPointerAcceptProvider< Calc >::isAtom ( ) const
inlineoverridevirtual

Reimplemented from joda::query::IValueProvider.

Here is the caller graph for this function:

◆ isConst()

template<class Calc >
bool joda::query::UnaryPointerAcceptProvider< Calc >::isConst ( ) const
inlineoverridevirtual
Returns
True if the Provider is const, false else

Implements joda::query::IValueProvider.

◆ toString()

template<class Calc >
std::string joda::query::UnaryPointerAcceptProvider< Calc >::toString ( ) const
inlineoverridevirtual
Returns
A textual representation of the IValueProvider

Reimplemented from joda::query::IValueProvider.

Here is the call graph for this function:

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