diff --git a/src/tink/Macro.hx b/src/tink/MacroApi.hx similarity index 86% rename from src/tink/Macro.hx rename to src/tink/MacroApi.hx index 83a2c07..d7bdf7d 100644 --- a/src/tink/Macro.hx +++ b/src/tink/MacroApi.hx @@ -13,9 +13,9 @@ typedef Outcome = tink.core.Outcome; typedef OutcomeTools = tink.core.Outcome.OutcomeTools; //TODO: consider adding stuff from haxe.macro.Expr here -class Macro { +class MacroApi { static var idCounter = 0; - static public inline function tempName(c:Class, ?prefix = '__tinkTmp'):String + static public inline function tempName(?prefix = '__tinkTmp'):String return prefix + Std.string(idCounter++); static public function pos() return haxe.macro.Context.currentPos(); } \ No newline at end of file diff --git a/src/tink/macro/ClassBuilder.hx b/src/tink/macro/ClassBuilder.hx index 00b939d..aee4052 100644 --- a/src/tink/macro/ClassBuilder.hx +++ b/src/tink/macro/ClassBuilder.hx @@ -5,7 +5,7 @@ import haxe.macro.Type; import haxe.macro.Context; import haxe.macro.Printer; -using tink.Macro; +using tink.MacroApi; using Lambda; class ClassBuilder { diff --git a/src/tink/macro/Constructor.hx b/src/tink/macro/Constructor.hx index a77a457..c6ae900 100644 --- a/src/tink/macro/Constructor.hx +++ b/src/tink/macro/Constructor.hx @@ -2,7 +2,7 @@ package tink.macro; import haxe.macro.Expr; -using tink.Macro; +using tink.MacroApi; class Constructor { var oldStatements:Array; @@ -18,7 +18,7 @@ class Constructor { public function new(f:Function, ?isPublic:Null = null, ?pos:Position) { this.nuStatements = []; this.isPublic = isPublic; - this.pos = pos.getPos(); + this.pos = pos.sanitize(); this.onGenerateHooks = []; this.args = []; diff --git a/src/tink/macro/Exprs.hx b/src/tink/macro/Exprs.hx index a932c9e..9178f7f 100644 --- a/src/tink/macro/Exprs.hx +++ b/src/tink/macro/Exprs.hx @@ -37,7 +37,7 @@ class Exprs { if (Reflect.hasField(rules, s)) Reflect.field(rules, s) else if (s.startsWith('tmp')) { - Reflect.setField(rules, s, Macro.tempName(String, '__tink' + s.substr(3))); + Reflect.setField(rules, s, MacroApi.tempName('__tink' + s.substr(3))); replace(s); } else s; diff --git a/src/tink/macro/Member.hx b/src/tink/macro/Member.hx index 7bf0c4f..f238e3f 100644 --- a/src/tink/macro/Member.hx +++ b/src/tink/macro/Member.hx @@ -1,7 +1,7 @@ package tink.macro; import haxe.macro.Expr; -using tink.Macro; +using tink.MacroApi; abstract Member(Field) from Field to Field { static public function prop(name:String, t:ComplexType, pos, ?noread = false, ?nowrite = false):Member { diff --git a/src/tink/macro/Ops.hx b/src/tink/macro/Ops.hx index 605084a..5c95f5d 100644 --- a/src/tink/macro/Ops.hx +++ b/src/tink/macro/Ops.hx @@ -2,7 +2,7 @@ package tink.macro; import haxe.macro.Expr; -using tink.Macro; +using tink.MacroApi; class Binary { static public function get(o:Binop, e:Expr) diff --git a/tests/Exprs.hx b/tests/Exprs.hx index 3aa47b4..f08b4b5 100644 --- a/tests/Exprs.hx +++ b/tests/Exprs.hx @@ -1,7 +1,7 @@ package ; import haxe.macro.Expr; -using tink.Macro; +using tink.MacroApi; class Exprs extends Base { function exprEq(e1:Expr, e2:Expr) { diff --git a/tests/Positions.hx b/tests/Positions.hx index e59196e..3704ce2 100644 --- a/tests/Positions.hx +++ b/tests/Positions.hx @@ -3,7 +3,7 @@ package ; import haxe.macro.Context; import haxe.macro.Expr; -using tink.Macro; +using tink.MacroApi; class Positions extends Base { function stringCompare(v1:A, v2:A) diff --git a/tests/Types.hx b/tests/Types.hx index 2d8e11a..5e6e7d6 100644 --- a/tests/Types.hx +++ b/tests/Types.hx @@ -3,7 +3,7 @@ package ; import haxe.macro.Expr; import haxe.macro.Context; -using tink.Macro; +using tink.MacroApi; class Types extends Base { function type(c:ComplexType) @@ -35,12 +35,12 @@ class Types extends Base { assertSuccess((macro : Int).toType()); assertFailure((macro : Tni).toType()); function blank() - return type(Macro.pos().makeBlankType()); + return type(MacroApi.pos().makeBlankType()); var bool = type(macro : Bool); assertTrue(blank().isSubTypeOf(bool).isSuccess()); assertTrue(bool.isSubTypeOf(blank()).isSuccess()); - Macro.pos().makeBlankType().toString(); + MacroApi.pos().makeBlankType().toString(); } } \ No newline at end of file