An extended version of the GenericCompiler
that uses String
for all
the "compile" function return types.
Constructor
Methods
compileClassFuncExpr(expr:TypedExpr):String
Alias for compileClassVarExpr
for function expressions.
This might be updated with additional behavior in future
versions of Reflaxe, so be sure to use for functions even
if it works identically to compileClassVarExpr
.
compileClassVarExpr(expr:TypedExpr):String
Returns the result of compileExpressionsIntoLines
from the expr
.
compileExpression(expr:TypedExpr, topLevel:Bool = false):Null<String>
Overridden to add target-code injection support.
compileExpressionForCodeInject(expr:TypedExpr):Null<String>
Compiles an expression for a target code injection argument.
compileExpressionsIntoLines(exprList:Array<TypedExpr>):String
Convert a list of expressions to lines of output code. The lines of code are spaced out to make it feel like it was human-written.
compileNFCThisExpression(expr:TypedExpr, meta:Null<MetaAccess>):String
Compiles the {this} expression for @:nativeFunctionCode
.
compileNativeFunctionCodeMeta(callExpr:TypedExpr, arguments:Array<TypedExpr>, ?typeParamsCallback:Int ‑> Null<String>, ?custom:String ‑> String):Null<String>
This function is for compiling the result of functions
using the @:nativeFunctionCode
meta.
compileNativeTypeCodeMeta(type:Type, ?typeParams:Array<() ‑> String>):Null<String>
This function is for compiling the result of functions
using the @:nativeTypeCode
meta.
compileNativeVariableCodeMeta(fieldExpr:TypedExpr, ?varCpp:String):Null<String>
This function is for compiling the result of functions
using the @:nativeVariableCode
meta.
generateOutputIterator():Iterator<DataAndFileInfo<StringOrBytes>>
Iterate through all output String
s.
injectExpressionPrefixContent(content:String):Bool
If called while compiling multiple expressions, this will inject content prior to the expression currently being compiled.