Merge commit '289e516fe3d91b935e74c29e698d0d06815efd0d' as 'projects/tink_syntaxhub'
This commit is contained in:
27
projects/tink_syntaxhub/tests/TxtFrontend.hx
Normal file
27
projects/tink_syntaxhub/tests/TxtFrontend.hx
Normal file
@@ -0,0 +1,27 @@
|
||||
import tink.syntaxhub.*;
|
||||
|
||||
import haxe.macro.Expr;
|
||||
import haxe.macro.Context;
|
||||
|
||||
class TxtFrontend implements FrontendPlugin {
|
||||
|
||||
public function new() {}
|
||||
|
||||
public function extensions()
|
||||
return ['txt'].iterator();
|
||||
|
||||
public function parse(file:String, context:FrontendContext):Void {
|
||||
|
||||
var text = sys.io.File.getContent(file);
|
||||
var pos = Context.makePosition({ file: file, min: 0, max: text.length });
|
||||
|
||||
context.getType().fields.push({
|
||||
name: 'TEXT',
|
||||
access: [AStatic, APublic],
|
||||
kind: FProp('default', 'null', macro : String, macro $v{text}),
|
||||
pos: pos,
|
||||
});
|
||||
}
|
||||
static function use()
|
||||
tink.SyntaxHub.frontends.whenever(new TxtFrontend());
|
||||
}
|
||||
Reference in New Issue
Block a user