ApolloRunner class abstract

Base class for ApolloVM runners.

Implementations of this class allows the execution of an ASTRoot in a specific language.

Implemented types
Implementers
Available Extensions

Constructors

ApolloRunner(ApolloVM apolloVM)

Properties

apolloVM ApolloVM
The ApolloVM of this runner.
final
externalFunctionMapper ApolloExternalFunctionMapper?
getter/setter pair
externalPrintFunction ↔ void Function(Object? o)
The external print function to map.
getter/setter pair
hashCode int
The hash code for this object.
no setterinherited
language String
The target programing language of this runner.
no setter
runtimeType Type
A representation of the runtime type of the object.
no setterinherited

Methods

copy() ApolloRunner
Returns a copy of this instance.
createDefaultApolloExternalFunctionMapper() ApolloExternalFunctionMapper?
The default ApolloExternalFunctionMapper for this target language runner.
executeClassMethod(String namespace, String className, String methodName, {List? positionalParameters, Map? namedParameters, VMObject? classInstanceObject, Map<String, ASTValue>? classInstanceFields}) FutureOr<ASTValue>
Executes a class method.
executeFunction(String namespace, String functionName, {List? positionalParameters, Map? namedParameters, bool allowClassMethod = false}) Future<ASTValue>
Executes a function in namespace and with name functionName.
getClass(String className, {String? namespace, bool caseInsensitive = false}) FutureOr<ASTClassNormal?>
Returns an ASTClassNormal for className in namespace (optional).
getClassMethod(String namespace, String className, String methodName, [dynamic positionalParameters, dynamic namedParameters]) FutureOr<ASTFunctionDeclaration?>
Returns a class method.
getFunction(String namespace, String functionName, [List? positionalParameters, Map? namedParameters]) FutureOr<ASTFunctionDeclaration?>
Returns a function in namespace and with name functionName.
getFunctionCodeUnit(String namespace, String functionName, {bool allowClassMethod = false}) FutureOr<({String? className, CodeUnit? codeUnit})>
noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
reset() → void
resolveType(String typeName, {String? namespace, String? language, bool caseInsensitive = false}) FutureOr<ASTType?>
Resolves an ASTType with typeName.
override
toString() String
A string representation of this object.
override
tryExecuteClassFunction(String namespace, String className, String functionName, [List? positionalParameters]) Future<ASTValue?>
Tries to execute a class function with variations of positionalParameters.
tryExecuteFunction(String namespace, String functionName, [List? positionalParameters]) Future<ASTValue?>
Tries to execute a function with variations of positionalParameters.

Operators

operator ==(Object other) bool
The equality operator.
inherited