Gray C++ Libraries  0.0.2
A set of C++ libraries for MSVC, GNU on Windows, WinCE, Linux
GrayLib::cExpressionContext Class Reference

#include <cExpressionContext.h>

Inheritance diagram for GrayLib::cExpressionContext:
Gray::CObject GrayLib::cScriptContext

Public Types

enum  M_TYPE_ { M_QTY }
 

Public Member Functions

virtual ~cExpressionContext ()
 
virtual bool isValidCheck () const noexcept
 < memory allocation and structure definitions are valid. More...
 
virtual cScriptableInterfaceDefPtr _stdcall get_ScriptInterfaceDef () const
 
STDMETHOD() s_InvokeExec (const cScriptableMethod *pFunc, const cVariant &vArgs, cVariant &vValRet)
 
- Public Member Functions inherited from Gray::CObject
virtual ~CObject ()
 
virtual void AssertValid () const
 < memory allocation and structure definitions are valid. More...
 
virtual void Serialize (cArchive &a)
 

Static Public Attributes

static cScriptableInterfaceDef sm_ScriptInterfaceDef
 
static cScriptableMethod sm_Methods [M_QTY+1]
 

Protected Member Functions

 cExpressionContext ()
 

Detailed Description

Base expression evaluation context data. this defines the symbolic values not the rules of syntax. base for cScriptContext Usually stack based (Except for m_pContextRoot which will be global and shared). use cExpressionExec to declare it is the active context.

Member Enumeration Documentation

◆ M_TYPE_

Enumerator
M_QTY 

Constructor & Destructor Documentation

◆ cExpressionContext()

GrayLib::cExpressionContext::cExpressionContext ( )
protected

◆ ~cExpressionContext()

GrayLib::cExpressionContext::~cExpressionContext ( )
virtual

Member Function Documentation

◆ get_ScriptInterfaceDef()

virtual cScriptableInterfaceDefPtr _stdcall GrayLib::cExpressionContext::get_ScriptInterfaceDef ( ) const
inlinevirtual

Reimplemented in GrayLib::cScriptContext.

◆ isValidCheck()

virtual bool GrayLib::cExpressionContext::isValidCheck ( ) const
inlinevirtualnoexcept

< memory allocation and structure definitions are valid.

NOT in MFC so use COBJECT_IsValidCheck to call.

Note
This can't be called in constructors and destructors of course !

Reimplemented from Gray::CObject.

Reimplemented in GrayLib::cScriptContext.

◆ s_InvokeExec()

HRESULT GrayLib::cExpressionContext::s_InvokeExec ( const cScriptableMethod pFunc,
const cVariant vArgs,
cVariant vValRet 
)

All these just have simple argument transform responses,

Member Data Documentation

◆ sm_Methods

cScriptableMethod GrayLib::cExpressionContext::sm_Methods
static
Initial value:
=
{
#define cExpressionFunc(a,b,c,d)
}
#define CSCRIPT_PROP_END
Definition: cScriptableInterface.h:264

◆ sm_ScriptInterfaceDef

cScriptableInterfaceDef GrayLib::cExpressionContext::sm_ScriptInterfaceDef
static

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