KSeExpr 4.0.4.0
KSeExpr::RandFuncX Class Reference
Inheritance diagram for KSeExpr::RandFuncX:
KSeExpr::ExprFuncSimple KSeExpr::ExprFuncX

Classes

struct  Data

Public Member Functions

 RandFuncX () noexcept
Public Member Functions inherited from KSeExpr::ExprFuncSimple
 ExprFuncSimple (const bool threadSafe)
int buildInterpreter (const ExprFuncNode *node, Interpreter *interpreter) const override
 Build an interpreter to evaluate the expression.
Public Member Functions inherited from KSeExpr::ExprFuncX
 ExprFuncX (const bool threadSafe)
 ExprFuncX (const ExprFuncX &)=default
 ExprFuncX (ExprFuncX &&)=default
ExprFuncXoperator= (const ExprFuncX &)=default
ExprFuncXoperator= (ExprFuncX &&)=default
virtual ExprType type () const
virtual ~ExprFuncX ()=default
bool isThreadSafe () const
virtual size_t sizeInBytes () const
 Return memory usage of a funcX in bytes.
virtual void statistics (Statistics &) const
 Give this function a chance to populate its statistics.

Private Member Functions

ExprType prep (ExprFuncNode *node, bool, ExprVarEnvBuilder &envBuilder) const override
ExprFuncNode::DataevalConstant (const ExprFuncNode *, ArgHandle args) const override
void eval (ArgHandle args) override

Additional Inherited Members

Protected Attributes inherited from KSeExpr::ExprFuncX
bool _isScalar {}
ExprType _type

Detailed Description

Definition at line 447 of file ExprBuiltins.cpp.

Constructor & Destructor Documentation

◆ RandFuncX()

KSeExpr::RandFuncX::RandFuncX ( )
inlinenoexcept

Definition at line 494 of file ExprBuiltins.cpp.

References KSeExpr::ExprFuncSimple::ExprFuncSimple().

Member Function Documentation

◆ eval()

void KSeExpr::RandFuncX::eval ( ArgHandle args)
inlineoverrideprivatevirtual

◆ evalConstant()

ExprFuncNode::Data * KSeExpr::RandFuncX::evalConstant ( const ExprFuncNode * ,
ArgHandle args ) const
inlineoverrideprivatevirtual

◆ prep()

ExprType KSeExpr::RandFuncX::prep ( ExprFuncNode * node,
bool scalarWanted,
ExprVarEnvBuilder & env ) const
inlineoverrideprivatevirtual

prep the expression by doing all type checking argument checking, etc.

Implements KSeExpr::ExprFuncSimple.

Definition at line 456 of file ExprBuiltins.cpp.

References KSeExpr::ExprFuncNode::checkArg(), KSeExpr::ExprType::Error(), KSeExpr::ExprType::FP(), KSeExpr::ExprNode::numChildren(), and KSeExpr::ExprType::Varying().


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