瀏覽代碼

print `final` tag for classes in haxe.macro.Printer

Dan Korostelev 6 年之前
父節點
當前提交
8c79a27100
共有 1 個文件被更改,包括 3 次插入2 次删除
  1. 3 2
      std/haxe/macro/Printer.hx

+ 3 - 2
std/haxe/macro/Printer.hx

@@ -289,8 +289,9 @@ class Printer {
 						tabs + printField(f) + ";";
 					}].join("\n")
 					+ "\n}";
-				case TDClass(superClass, interfaces, isInterface):
-					(isInterface ? "interface " : "class ") + t.name + (t.params != null && t.params.length > 0 ? "<" + t.params.map(printTypeParamDecl).join(", ") + ">" : "")
+				case TDClass(superClass, interfaces, isInterface, isFinal):
+					(isFinal ? "final " : "")
+					+ (isInterface ? "interface " : "class ") + t.name + (t.params != null && t.params.length > 0 ? "<" + t.params.map(printTypeParamDecl).join(", ") + ">" : "")
 					+ (superClass != null ? " extends " + printTypePath(superClass) : "")
 					+ (interfaces != null ? (isInterface ? [for (tp in interfaces) " extends " + printTypePath(tp)] : [for (tp in interfaces) " implements " + printTypePath(tp)]).join("") : "")
 					+ " {\n"