More types of function meta

This commit is contained in:
2021-01-02 19:42:03 -07:00
parent f84b07f22f
commit b96da3ddba

View File

@@ -37,13 +37,24 @@ class FieldForms {
[]; [];
}; };
} }
// AMacro access is not allowed because it wouldn't make sense to write Haxe macros in Kiss
// when you can write Kiss macros which are just as powerful
return switch (nameExp.def) { return switch (nameExp.def) {
case MetaExp("mut", nameExp): case MetaExp("mut", nameExp):
access.remove(AFinal); access.remove(AFinal);
fieldAccess(formName, fieldName, nameExp, access); fieldAccess(formName, fieldName, nameExp, access);
case MetaExp("override", nameExp):
access.push(AOverride);
fieldAccess(formName, fieldName, nameExp, access);
case MetaExp("dynamic", nameExp): case MetaExp("dynamic", nameExp):
access.push(ADynamic); access.push(ADynamic);
fieldAccess(formName, fieldName, nameExp, access); fieldAccess(formName, fieldName, nameExp, access);
case MetaExp("inline", nameExp):
access.push(AInline);
fieldAccess(formName, fieldName, nameExp, access);
case MetaExp("final", nameExp):
access.push(AFinal);
fieldAccess(formName, fieldName, nameExp, access);
default: default:
if (formName == "defvar" || formName == "defun") { if (formName == "defvar" || formName == "defun") {
access.push(AStatic); access.push(AStatic);