mirror of
https://git.huckle.dev/Huckles-Minecraft-Archive/jpexs-decompiler.git
synced 2026-07-12 22:48:20 +00:00
Fixed: AS3 direct editation/highlighter §§pop in class traits
Fixed: AS direct editation/highlighter §§pop can have getmember or call
This commit is contained in:
@@ -691,7 +691,7 @@ public class ActionScript3Parser {
|
||||
//s = lex();
|
||||
|
||||
ParsedSymbol s = lex();
|
||||
while (s.isType(SymbolType.NATIVE, SymbolType.STATIC, SymbolType.PUBLIC, SymbolType.PRIVATE, SymbolType.PROTECTED, SymbolType.OVERRIDE, SymbolType.FINAL, SymbolType.DYNAMIC, SymbolGroup.IDENTIFIER, SymbolType.INTERNAL, SymbolType.PREPROCESSOR)) {
|
||||
loops: while (s.isType(SymbolType.NATIVE, SymbolType.STATIC, SymbolType.PUBLIC, SymbolType.PRIVATE, SymbolType.PROTECTED, SymbolType.OVERRIDE, SymbolType.FINAL, SymbolType.DYNAMIC, SymbolGroup.IDENTIFIER, SymbolType.INTERNAL, SymbolType.PREPROCESSOR)) {
|
||||
if (s.type == SymbolType.FINAL) {
|
||||
if (isFinal) {
|
||||
throw new AVM2ParseException("Only one final keyword allowed", lexer.yyline());
|
||||
@@ -780,6 +780,7 @@ public class ActionScript3Parser {
|
||||
|
||||
} else {
|
||||
lexer.pushback(s);
|
||||
break loops;
|
||||
}
|
||||
break;
|
||||
}
|
||||
@@ -2448,6 +2449,7 @@ public class ActionScript3Parser {
|
||||
break;
|
||||
case "pop":
|
||||
ret = new PopItem(DIALECT, null, null);
|
||||
allowMemberOrCall = true;
|
||||
break;
|
||||
case "goto": //TODO
|
||||
case "multiname":
|
||||
|
||||
@@ -626,7 +626,7 @@ public class ActionScript3SimpleParser implements SimpleParser {
|
||||
parseMetadata(errors);
|
||||
|
||||
ParsedSymbol s = lex();
|
||||
while (s.isType(SymbolType.NATIVE, SymbolType.STATIC, SymbolType.PUBLIC, SymbolType.PRIVATE, SymbolType.PROTECTED, SymbolType.OVERRIDE, SymbolType.FINAL, SymbolType.DYNAMIC, SymbolGroup.IDENTIFIER, SymbolType.INTERNAL, SymbolType.PREPROCESSOR)) {
|
||||
loops: while (s.isType(SymbolType.NATIVE, SymbolType.STATIC, SymbolType.PUBLIC, SymbolType.PRIVATE, SymbolType.PROTECTED, SymbolType.OVERRIDE, SymbolType.FINAL, SymbolType.DYNAMIC, SymbolGroup.IDENTIFIER, SymbolType.INTERNAL, SymbolType.PREPROCESSOR)) {
|
||||
if (s.type == SymbolType.FINAL) {
|
||||
if (isFinal) {
|
||||
errors.add(new SimpleParseException("Only one final keyword allowed", lexer.yyline(), s.position));
|
||||
@@ -712,6 +712,7 @@ public class ActionScript3SimpleParser implements SimpleParser {
|
||||
|
||||
} else {
|
||||
lexer.pushback(s);
|
||||
break loops;
|
||||
}
|
||||
break;
|
||||
}
|
||||
@@ -1882,6 +1883,7 @@ public class ActionScript3SimpleParser implements SimpleParser {
|
||||
break;
|
||||
case "pop":
|
||||
ret = true;
|
||||
allowMemberOrCall = true;
|
||||
break;
|
||||
case "goto":
|
||||
expectedType(errors, SymbolGroup.IDENTIFIER);
|
||||
|
||||
@@ -1809,6 +1809,7 @@ public class ActionScript2Parser {
|
||||
break;
|
||||
case "pop":
|
||||
ret = new PopItem(DIALECT, null, null);
|
||||
allowMemberOrCall = true;
|
||||
break;
|
||||
case "strict":
|
||||
s = lexer.lex();
|
||||
|
||||
@@ -1340,6 +1340,7 @@ public class ActionScript2SimpleParser implements SimpleParser {
|
||||
break;
|
||||
case "pop":
|
||||
ret = true;
|
||||
allowMemberOrCall = true;
|
||||
break;
|
||||
case "strict":
|
||||
s = lexer.lex();
|
||||
|
||||
Reference in New Issue
Block a user