TalanSoft Toolkits  201707
 All Classes Namespaces Functions Variables Typedefs Enumerations Enumerator Groups Pages
List of all members
iExpressionContext Struct Referenceabstract
Inheritance diagram for iExpressionContext:
iUnknown

Detailed Description

Expression context.

General

virtual iExpressionContextGetParentContext () const =0
 Get the parent context. {Property}. More...
 
virtual iExpressionContextCreateContext ()=0
 Create a child context. More...
 

Variables

virtual iExpressionVariableCreateVariable (const achar *aaszName, eExpressionVariableType aType, tExpressionVariableFlags aFlags=eExpressionVariableFlags_Default)=0
 Create a new variable. More...
 
virtual iExpressionVariableCreateVariableFromExpr (const achar *aaszName, const achar *aaszExpr, tExpressionVariableFlags aFlags=eExpressionVariableFlags_Default)=0
 Create a variable from an expression. More...
 
virtual iExpressionVariableCreateVariableFromRunnable (const achar *aaszName, eExpressionVariableType aType, iRunnable *apRunnable, tExpressionVariableFlags aFlags=eExpressionVariableFlags_Default)=0
 Create a variable whos value is fetched from a runnable. More...
 
virtual iExpressionVariableCreateVariableFromVar (const achar *aaszName, const Var &aInitialValue, tExpressionVariableFlags aFlags=eExpressionVariableFlags_Default)=0
 Create a variable initialized with the value of the specified variant. More...
 
virtual tBool AddVariable (iExpressionVariable *apVar)=0
 Add a variable to the expression context. More...
 
virtual tBool RemoveVariable (iExpressionVariable *apVariable)=0
 Remove a variable from the expression context. More...
 
virtual iExpressionVariableFindVariable (iHString *ahspName) const =0
 Find the variable with the specified name. More...
 

Expressions

virtual iExpressionCreateExpression (const achar *aaszExpr)=0
 Create a new expression. More...
 
virtual iExpressionVariableEval (const achar *aaszExpr)=0
 Evaluate an expression. More...
 
virtual tBool GetUnknownSymbols (const achar *aaszExpr, tStringCVec *apList)=0
 Get the unknown symbols into the specified expression. More...
 

Enumerations

virtual void SetGlobalEnumSearch (tBool abEnabled)=0
 Allows the parser to search in all registered modules enumerations. {Property}. More...
 
virtual tBool GetGlobalEnumSearch () const =0
 Get the global enum search status. {Property}. More...
 
virtual tBool AddEnumDef (const sEnumDef *apEnumDef)=0
 Add an enumeration definition. More...
 
virtual const sEnumDefGetEnumDef (const achar *aaszName) const =0
 Get the specified enumeration. {Property}. More...
 
virtual void SetDefaultEnumDef (const sEnumDef *apEnumDef)=0
 Set the default enumeration definition. {Property}. More...
 
virtual const sEnumDefGetDefaultEnumDef () const =0
 Get the default enumeration definition. {Property}. More...
 
virtual cString GetEnumValueString (tU32 anValue) const =0
 Get an enumeration value string. More...
 
virtual cString GetEnumFlagsString (tU32 anValue) const =0
 Get an enumeration flags string. More...
 

URL Resolver

virtual tBool RegisterURLResolver (const achar *aaszProtocol, iExpressionURLResolver *apResolver)=0
 
virtual tBool UnregisterURLResolver (const achar *aaszProtocol)=0
 
virtual iExpressionURLResolverFindURLResolver (const achar *aaszProtocol) const =0
 

Additional Inherited Members

- Public Member Functions inherited from iUnknown
virtual tBool IsOK () const =0
 Check if the object is valid. More...
 
virtual tI32 AddRef ()=0
 Signal that one more reference of the object has been created. More...
 
virtual tI32 Release ()=0
 Release a reference of the object. More...
 
virtual void DeleteThis ()=0
 Bypass any reference counting and delete this object. More...
 
virtual void Invalidate ()=0
 Invalidate the object. More...
 
virtual iUnknownQueryInterface (const tUUID &aIID)=0
 Query an interface. More...
 
virtual void ListInterfaces (iMutableCollection *apLst, tU32 anFlags) const =0
 Fill a UUID list containing the UUIDs of the implemented interfaces. More...
 
virtual tI32 SetNumRefs (tI32 anNumRefs)=0
 Set the reference counter directly. More...
 
virtual tI32 GetNumRefs () const =0
 Get the number of references to this object. More...
 

Member Function Documentation

virtual iExpressionContext* GetParentContext ( ) const
pure virtual

Get the parent context. {Property}.

virtual iExpressionContext* CreateContext ( )
pure virtual

Create a child context.

virtual iExpressionVariable* CreateVariable ( const achar aaszName,
eExpressionVariableType  aType,
tExpressionVariableFlags  aFlags = eExpressionVariableFlags_Default 
)
pure virtual

Create a new variable.

virtual iExpressionVariable* CreateVariableFromExpr ( const achar aaszName,
const achar aaszExpr,
tExpressionVariableFlags  aFlags = eExpressionVariableFlags_Default 
)
pure virtual

Create a variable from an expression.

virtual iExpressionVariable* CreateVariableFromRunnable ( const achar aaszName,
eExpressionVariableType  aType,
iRunnable apRunnable,
tExpressionVariableFlags  aFlags = eExpressionVariableFlags_Default 
)
pure virtual

Create a variable whos value is fetched from a runnable.

virtual iExpressionVariable* CreateVariableFromVar ( const achar aaszName,
const Var aInitialValue,
tExpressionVariableFlags  aFlags = eExpressionVariableFlags_Default 
)
pure virtual

Create a variable initialized with the value of the specified variant.

virtual tBool AddVariable ( iExpressionVariable apVar)
pure virtual

Add a variable to the expression context.

Remarks
Not duplicate or empty variable names are allowed.
virtual tBool RemoveVariable ( iExpressionVariable apVariable)
pure virtual

Remove a variable from the expression context.

virtual iExpressionVariable* FindVariable ( iHString ahspName) const
pure virtual

Find the variable with the specified name.

virtual iExpression* CreateExpression ( const achar aaszExpr)
pure virtual

Create a new expression.

virtual iExpressionVariable* Eval ( const achar aaszExpr)
pure virtual

Evaluate an expression.

virtual tBool GetUnknownSymbols ( const achar aaszExpr,
tStringCVec apList 
)
pure virtual

Get the unknown symbols into the specified expression.

Parameters
aaszExprthe expression to retrieve the symbols from.
apListthe string list where the symbols will be place
See also
ni::tStringCVec
virtual void SetGlobalEnumSearch ( tBool  abEnabled)
pure virtual

Allows the parser to search in all registered modules enumerations. {Property}.

Remarks
Disabled by default.
virtual tBool GetGlobalEnumSearch ( ) const
pure virtual

Get the global enum search status. {Property}.

virtual tBool AddEnumDef ( const sEnumDef apEnumDef)
pure virtual

Add an enumeration definition.

virtual const sEnumDef* GetEnumDef ( const achar aaszName) const
pure virtual

Get the specified enumeration. {Property}.

virtual void SetDefaultEnumDef ( const sEnumDef apEnumDef)
pure virtual

Set the default enumeration definition. {Property}.

virtual const sEnumDef* GetDefaultEnumDef ( ) const
pure virtual

Get the default enumeration definition. {Property}.

virtual cString GetEnumValueString ( tU32  anValue) const
pure virtual

Get an enumeration value string.

Remarks
Uses the registered enumerations.
virtual cString GetEnumFlagsString ( tU32  anValue) const
pure virtual

Get an enumeration flags string.

Remarks
Uses the registered enumerations.
virtual tBool RegisterURLResolver ( const achar aaszProtocol,
iExpressionURLResolver apResolver 
)
pure virtual
virtual tBool UnregisterURLResolver ( const achar aaszProtocol)
pure virtual
virtual iExpressionURLResolver* FindURLResolver ( const achar aaszProtocol) const
pure virtual