haXe API Documentation
Back | Index
class haxe.macro.Context
Available in flash8, neko, js, flash, php, cpp
This is an API that can be used by macros implementations.
static function addResource(name : String, data : haxe.io.Bytes) : Void
Available in neko
Add or modify a resource that will be accessible with haxe.Resource api.
static function currentPos() : Position
Available in neko
Returns the position at which the macro is called
static function defineType(t : TypeDefinition) : Void
Available in neko
Define a new type based on the given definition.
static function defined(s : String) : Bool
Available in neko
Tells is the given compiler directive has been defined with -D
static function error(msg : String, pos : Position) : Dynamic
Available in neko
Display a compilation error at the given position in code and abort the current macro call
static function follow(t : Type, ?once : Bool) : Type
Available in neko
Follow all typedefs to reach the actual real type
static function getBuildFields() : Array<Field>
Available in neko
Returns the list of fields for the current type inside the build macro.
static function getClassPath() : Array<String>
Available in neko
Return the current classpath
static function getLocalClass() : Null<Ref<ClassType>>
Available in neko
Returns the current class in which the macro is called
static function getLocalType() : Null<Type>
Available in neko
Returns the current type in/on which the macro is called
static function getModule(name : String) : Array<Type>
Available in neko
Return the list of types defined in the given compilation unit module
static function getPosInfos(p : Position) : { min : Int, max : Int, file : String}
Available in neko
Get the informations stored into a given position.
static function getType(name : String) : Type
Available in neko
Resolve a type from its name.
static function getTypedExpr(t : TypedExpr) : Expr
Available in neko
Return the raw expression corresponding to the given typed expression.
static function makeExpr(v : Dynamic, pos : Position) : Expr
Available in neko
Build an expression corresponding to the given runtime value. Only basic types + enums are supported.
static function makePosition(inf : { min : Int, max : Int, file : String}) : Position
Available in neko
Build a position with the given informations.
static function onGenerate(callb : Array<Type> -> Void) : Void
Available in neko
Set a callback function that will return all the types compiled before they get generated.
static function parse(expr : String, pos : Position) : Expr
Available in neko
Parse a constructed string into the corresponding expression.
static function parseInlineString(expr : String, pos : Position) : Expr
Available in neko
Parse a string contained into source code into the corresponding expression. Errors positions are reported within this string
static function registerModuleDependency(modulePath : String, externFile : String) : Void
Available in neko
Manually add a dependency between a module and a third party file : make sure the module gets recompiled (if it was cached) in case the extern file has been modified as well.
static function registerModuleReuseCall(modulePath : String, macroCall : String) : Void
Available in neko
Add a macro call to perform in case the module is reused by the compilation cache.
static function resolvePath(file : String) : String
Available in neko
Resolve a filename based on current classpath.
static function signature(v : Dynamic) : String
Available in neko
Quickly build an hashed MD5 signature for any given value
static function typeof(e : Expr) : Type
Available in neko
Evaluate the type a given expression would have in the context of the current macro call.
static function warning(msg : String, pos : Position) : Void
Available in neko
Display a compilation warning at the given position in code
Back | Index