KissFrontend in src
This commit is contained in:
@@ -1,7 +1,7 @@
|
||||
-lib kiss
|
||||
-cp src
|
||||
--macro kiss.Kiss.setup()
|
||||
--macro KissFrontend.use()
|
||||
--macro kiss.KissFrontend.use()
|
||||
-lib tink_syntaxhub
|
||||
--main smooch.Main
|
||||
--interp
|
||||
|
@@ -1,29 +0,0 @@
|
||||
package;
|
||||
|
||||
import kiss.Kiss;
|
||||
import tink.syntaxhub.*;
|
||||
import haxe.macro.Expr;
|
||||
import haxe.macro.Context;
|
||||
import haxe.macro.Expr.ImportMode;
|
||||
|
||||
class KissFrontend implements FrontendPlugin {
|
||||
|
||||
public function new() {}
|
||||
|
||||
public function extensions()
|
||||
return ['kiss'].iterator();
|
||||
|
||||
public function parse(file:String, context:FrontendContext):Void {
|
||||
|
||||
final fields = Kiss.build(file,null,false,context.name);
|
||||
var pos = Context.makePosition({ file: file, min: 0, max: 999 });
|
||||
trace(context.name);
|
||||
final type = context.getType();
|
||||
context.addImport('kiss.Prelude',INormal,pos);
|
||||
for (field in fields){
|
||||
type.fields.push(field);
|
||||
}
|
||||
}
|
||||
static function use()
|
||||
tink.SyntaxHub.frontends.whenever(new KissFrontend());
|
||||
}
|
Reference in New Issue
Block a user