public

Inheritance Graph

graph BT
	FunctionCallContext
	FunctionCallContext --> EReferenceCounter
	click FunctionCallContext "classEScript_1_1FunctionCallContext"
	click EReferenceCounter "classEScript_1_1EReferenceCounter"

Description

[ FunctionCallContext ]

Main

   
   
typedef std::vector< Instruction >::const_iterator instructionCursor_t
   
void markAsProvidingCallerAsResult()
… or otherwise, continue with the execution of the parent-context.
   
void enableStopExecutionAfterEnding()
   
ObjPtr getCaller() const
   
int getCurrentLine() const
   
size_t getExceptionHandlerPos() const
   
const InstructionBlock & getInstructionBlock() const
   
const instructionCursor_t & getInstructionCursor() const
   
const std::vector< Instruction > & getInstructions() const
   
EPtr < UserFunction > getUserFunction() const
   
void increaseInstructionCursor()
   
void initCaller(const ObjPtr _caller)
Set the caller-object; the caller-member as well as the local-‘this’-variable.
   
bool isConstructorCall() const
   
bool isExecutionStoppedAfterEnding() const
   
bool isProvidingCallerAsResult() const
   
void markAsConstructorCall()
   
void setExceptionHandlerPos(const size_t p)
   
void setInstructionCursor(const size_t p)

Local variables

   
   
void assignToLocalVariable(const uint32_t index, ObjRef && value)
   
void assignToLocalVariable(const uint32_t index, const ObjRef & value)
   
Object * getLocalVariable(const uint32_t index) const
   
Object * getStaticVar(const uint32_t index) const
   
std::string getLocalVariablesAsString(const bool includeUndefined) const
   
void resetLocalVariable(const uint32_t index)
   
StringId getLocalVariableName(const uint32_t index) const
   
void setStaticVar(const uint32_t index, Object * value)

RtValue Stack operations

   
   
void stack_clear()
   
void stack_dup()
   
bool stack_empty() const
   
void stack_pushBool(const bool value)
   
void stack_pushUndefined()
   
void stack_pushFunction(const uint32_t functionIndex)
   
void stack_pushNumber(const double & value)
   
void stack_pushUInt32(const uint32_t value)
   
void stack_pushIdentifier(const StringId & strId)
   
void stack_pushStringIndex(const uint32_t value)
   
void stack_pushObject(const ObjPtr & obj)
   
void stack_pushValue( RtValue && value)
   
void stack_pushVoid()
   
size_t stack_size() const
   
void stack_pop()
   
bool stack_popBool()
   
StringId stack_popIdentifier()
   
uint32_t stack_popUInt32()
   
double stack_popNumber()
   
uint32_t stack_popStringIndex()
   
ObjRef stack_popObject()
   
ObjRef rtValueToObject( RtValue & value)
   
ObjRef stack_popObjectValue()
   
RtValue stack_popValue()
   
std::string stack_toDbgString() const

Public Static Functions

   
   
FunctionCallContext * create(const EPtr < UserFunction > userFunction, const ObjPtr _caller)
   
void release( FunctionCallContext * rts)

Documentation

typedef
EScript::FunctionCallContext::instructionCursor_t

public
 
 
typedef std::vector< Instruction >::const_iterator instructionCursor_t

Defined in EScript/EScript/Runtime/FunctionCallContext.h:36


function
EScript::FunctionCallContext::markAsProvidingCallerAsResult

public inline
   
   
void markAsProvidingCallerAsResult( )

… or otherwise, continue with the execution of the parent-context.

Marks that the return value of the context should be used as the calling context’s calling object. This is the case, if the context belongs to a superconstructor call.

Defined in EScript/EScript/Runtime/FunctionCallContext.h:62


function
EScript::FunctionCallContext::enableStopExecutionAfterEnding

public inline
   
   
void enableStopExecutionAfterEnding( )

Defined in EScript/EScript/Runtime/FunctionCallContext.h:63


function
EScript::FunctionCallContext::getCaller

public const inline
   
   
ObjPtr getCaller( ) const

Defined in EScript/EScript/Runtime/FunctionCallContext.h:65


function
EScript::FunctionCallContext::getCurrentLine

public const inline
   
   
int getCurrentLine( ) const

Defined in EScript/EScript/Runtime/FunctionCallContext.h:66


function
EScript::FunctionCallContext::getExceptionHandlerPos

public const inline
   
   
size_t getExceptionHandlerPos( ) const

Defined in EScript/EScript/Runtime/FunctionCallContext.h:69


function
EScript::FunctionCallContext::getInstructionBlock

public const inline
   
   
const InstructionBlock & getInstructionBlock( ) const

Defined in EScript/EScript/Runtime/FunctionCallContext.h:70


function
EScript::FunctionCallContext::getInstructionCursor

public const inline
   
   
const instructionCursor_t & getInstructionCursor( ) const

Defined in EScript/EScript/Runtime/FunctionCallContext.h:71


function
EScript::FunctionCallContext::getInstructions

public const inline
   
   
const std::vector< Instruction > & getInstructions( ) const

Defined in EScript/EScript/Runtime/FunctionCallContext.h:72


function
EScript::FunctionCallContext::getUserFunction

public const inline
   
   
EPtr < UserFunction > getUserFunction( ) const

Defined in EScript/EScript/Runtime/FunctionCallContext.h:73


function
EScript::FunctionCallContext::increaseInstructionCursor

public inline
   
   
void increaseInstructionCursor( )

Defined in EScript/EScript/Runtime/FunctionCallContext.h:75


function
EScript::FunctionCallContext::initCaller

public
     
     
void initCaller( const ObjPtr _caller )

Set the caller-object; the caller-member as well as the local-‘this’-variable.

Defined in EScript/EScript/Runtime/FunctionCallContext.h:78


function
EScript::FunctionCallContext::isConstructorCall

public const inline
   
   
bool isConstructorCall( ) const

Defined in EScript/EScript/Runtime/FunctionCallContext.h:79


function
EScript::FunctionCallContext::isExecutionStoppedAfterEnding

public const inline
   
   
bool isExecutionStoppedAfterEnding( ) const

Defined in EScript/EScript/Runtime/FunctionCallContext.h:80


function
EScript::FunctionCallContext::isProvidingCallerAsResult

public const inline
   
   
bool isProvidingCallerAsResult( ) const

Defined in EScript/EScript/Runtime/FunctionCallContext.h:81


function
EScript::FunctionCallContext::markAsConstructorCall

public inline
   
   
void markAsConstructorCall( )

Defined in EScript/EScript/Runtime/FunctionCallContext.h:82


function
EScript::FunctionCallContext::setExceptionHandlerPos

public inline
     
     
void setExceptionHandlerPos( const size_t p )

Defined in EScript/EScript/Runtime/FunctionCallContext.h:83


function
EScript::FunctionCallContext::setInstructionCursor

public inline
     
     
void setInstructionCursor( const size_t p )

Defined in EScript/EScript/Runtime/FunctionCallContext.h:84


function
EScript::FunctionCallContext::assignToLocalVariable

public inline
     
     
void assignToLocalVariable( const uint32_t index,
  ObjRef && value
)    

Defined in EScript/EScript/Runtime/FunctionCallContext.h:97


function
EScript::FunctionCallContext::assignToLocalVariable

public inline
     
     
void assignToLocalVariable( const uint32_t index,
  const ObjRef & value
)    

Defined in EScript/EScript/Runtime/FunctionCallContext.h:102


function
EScript::FunctionCallContext::getLocalVariable

public const inline
     
     
Object * getLocalVariable( const uint32_t index ) const

Defined in EScript/EScript/Runtime/FunctionCallContext.h:107


function
EScript::FunctionCallContext::getStaticVar

public const inline
     
     
Object * getStaticVar( const uint32_t index ) const

Defined in EScript/EScript/Runtime/FunctionCallContext.h:112


function
EScript::FunctionCallContext::getLocalVariablesAsString

public const
     
     
std::string getLocalVariablesAsString( const bool includeUndefined ) const

Defined in EScript/EScript/Runtime/FunctionCallContext.h:118


function
EScript::FunctionCallContext::resetLocalVariable

public inline
     
     
void resetLocalVariable( const uint32_t index )

Defined in EScript/EScript/Runtime/FunctionCallContext.h:119


function
EScript::FunctionCallContext::getLocalVariableName

public const inline
     
     
StringId getLocalVariableName( const uint32_t index ) const

Defined in EScript/EScript/Runtime/FunctionCallContext.h:124


function
EScript::FunctionCallContext::setStaticVar

public inline
     
     
void setStaticVar( const uint32_t index,
  Object * value
)    

Defined in EScript/EScript/Runtime/FunctionCallContext.h:127


function
EScript::FunctionCallContext::stack_clear

public
   
   
void stack_clear( )

Defined in EScript/EScript/Runtime/FunctionCallContext.h:142


function
EScript::FunctionCallContext::stack_dup

public inline
   
   
void stack_dup( )

Defined in EScript/EScript/Runtime/FunctionCallContext.h:143


function
EScript::FunctionCallContext::stack_empty

public const inline
   
   
bool stack_empty( ) const

Defined in EScript/EScript/Runtime/FunctionCallContext.h:144


function
EScript::FunctionCallContext::stack_pushBool

public inline
     
     
void stack_pushBool( const bool value )

Defined in EScript/EScript/Runtime/FunctionCallContext.h:145


function
EScript::FunctionCallContext::stack_pushUndefined

public inline
   
   
void stack_pushUndefined( )

Defined in EScript/EScript/Runtime/FunctionCallContext.h:146


function
EScript::FunctionCallContext::stack_pushFunction

public inline
     
     
void stack_pushFunction( const uint32_t functionIndex )

Defined in EScript/EScript/Runtime/FunctionCallContext.h:147


function
EScript::FunctionCallContext::stack_pushNumber

public inline
     
     
void stack_pushNumber( const double & value )

Defined in EScript/EScript/Runtime/FunctionCallContext.h:150


function
EScript::FunctionCallContext::stack_pushUInt32

public inline
     
     
void stack_pushUInt32( const uint32_t value )

Defined in EScript/EScript/Runtime/FunctionCallContext.h:151


function
EScript::FunctionCallContext::stack_pushIdentifier

public inline
     
     
void stack_pushIdentifier( const StringId & strId )

Defined in EScript/EScript/Runtime/FunctionCallContext.h:152


function
EScript::FunctionCallContext::stack_pushStringIndex

public inline
     
     
void stack_pushStringIndex( const uint32_t value )

Defined in EScript/EScript/Runtime/FunctionCallContext.h:153


function
EScript::FunctionCallContext::stack_pushObject

public inline
     
     
void stack_pushObject( const ObjPtr & obj )

Defined in EScript/EScript/Runtime/FunctionCallContext.h:154


function
EScript::FunctionCallContext::stack_pushValue

public inline
     
     
void stack_pushValue( RtValue && value )

Defined in EScript/EScript/Runtime/FunctionCallContext.h:155


function
EScript::FunctionCallContext::stack_pushVoid

public inline
   
   
void stack_pushVoid( )

Defined in EScript/EScript/Runtime/FunctionCallContext.h:156


function
EScript::FunctionCallContext::stack_size

public const inline
   
   
size_t stack_size( ) const

Defined in EScript/EScript/Runtime/FunctionCallContext.h:158


function
EScript::FunctionCallContext::stack_pop

public inline
   
   
void stack_pop( )

Defined in EScript/EScript/Runtime/FunctionCallContext.h:159


function
EScript::FunctionCallContext::stack_popBool

public inline
   
   
bool stack_popBool( )

Defined in EScript/EScript/Runtime/FunctionCallContext.h:160


function
EScript::FunctionCallContext::stack_popIdentifier

public inline
   
   
StringId stack_popIdentifier( )

Defined in EScript/EScript/Runtime/FunctionCallContext.h:165


function
EScript::FunctionCallContext::stack_popUInt32

public inline
   
   
uint32_t stack_popUInt32( )

Defined in EScript/EScript/Runtime/FunctionCallContext.h:173


function
EScript::FunctionCallContext::stack_popNumber

public inline
   
   
double stack_popNumber( )

Defined in EScript/EScript/Runtime/FunctionCallContext.h:181


function
EScript::FunctionCallContext::stack_popStringIndex

public inline
   
   
uint32_t stack_popStringIndex( )

Defined in EScript/EScript/Runtime/FunctionCallContext.h:189


function
EScript::FunctionCallContext::stack_popObject

public inline
   
   
ObjRef stack_popObject( )

Defined in EScript/EScript/Runtime/FunctionCallContext.h:197


function
EScript::FunctionCallContext::rtValueToObject

public
     
     
ObjRef rtValueToObject( RtValue & value )

Defined in EScript/EScript/Runtime/FunctionCallContext.h:208


function
EScript::FunctionCallContext::stack_popObjectValue

public
   
   
ObjRef stack_popObjectValue( )

Works almost like stack_popObject() , but:

  • returns an obj->cloneOrReference() if the contained value is already an Object .

  • returns nullptr (and not Void ) iff the value is undefined. This is necessary to detect undefined parameters.

Defined in EScript/EScript/Runtime/FunctionCallContext.h:213


function
EScript::FunctionCallContext::stack_popValue

public inline
   
   
RtValue stack_popValue( )

Defined in EScript/EScript/Runtime/FunctionCallContext.h:215


function
EScript::FunctionCallContext::stack_toDbgString

public const
   
   
std::string stack_toDbgString( ) const

Defined in EScript/EScript/Runtime/FunctionCallContext.h:221


function
EScript::FunctionCallContext::create

public static
     
     
FunctionCallContext * create( const EPtr < UserFunction > userFunction,
  const ObjPtr _caller
)    

Defined in EScript/EScript/Runtime/FunctionCallContext.h:27


function
EScript::FunctionCallContext::release

public static
     
     
void release( FunctionCallContext * rts )

Defined in EScript/EScript/Runtime/FunctionCallContext.h:28