Seprate syntactic grammar started
This commit is contained in:
@@ -216,7 +216,7 @@ RemainderAssign
|
||||
LeftShiftAssign
|
||||
SighnedRightShiftAssign
|
||||
UnsighnedRightShiftAssign
|
||||
Identifier
|
||||
IDENTIFIER
|
||||
|
||||
rule names:
|
||||
UnicodeInputCharacter
|
||||
@@ -360,7 +360,7 @@ RemainderAssign
|
||||
LeftShiftAssign
|
||||
SighnedRightShiftAssign
|
||||
UnsighnedRightShiftAssign
|
||||
Identifier
|
||||
IDENTIFIER
|
||||
JavaLetter
|
||||
JavaLetterOrDigit
|
||||
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
// Generated from /Users/mannpatel/Desktop/CPSC-499/ExprLexer.g4 by ANTLR 4.13.2
|
||||
// Generated from C:/Users/mande/OneDrive - University of Calgary/Documents/GitHub/CPSC-499/ExprLexer.g4 by ANTLR 4.13.2
|
||||
import org.antlr.v4.runtime.Lexer;
|
||||
import org.antlr.v4.runtime.CharStream;
|
||||
import org.antlr.v4.runtime.Token;
|
||||
@@ -36,7 +36,7 @@ public class ExprLexer extends Lexer {
|
||||
UnsignedRightShift=95, AddAssign=96, SubtractAssign=97, MultiplyAssign=98,
|
||||
DivideAssign=99, BitwiseANDAssign=100, BitwiseORAssign=101, BitwiseXORAssign=102,
|
||||
RemainderAssign=103, LeftShiftAssign=104, SighnedRightShiftAssign=105,
|
||||
UnsighnedRightShiftAssign=106, Identifier=107;
|
||||
UnsighnedRightShiftAssign=106, IDENTIFIER=107;
|
||||
public static String[] channelNames = {
|
||||
"DEFAULT_TOKEN_CHANNEL", "HIDDEN"
|
||||
};
|
||||
@@ -73,7 +73,7 @@ public class ExprLexer extends Lexer {
|
||||
"Remainder", "LeftShift", "SignedRightShift", "UnsignedRightShift", "AddAssign",
|
||||
"SubtractAssign", "MultiplyAssign", "DivideAssign", "BitwiseANDAssign",
|
||||
"BitwiseORAssign", "BitwiseXORAssign", "RemainderAssign", "LeftShiftAssign",
|
||||
"SighnedRightShiftAssign", "UnsighnedRightShiftAssign", "Identifier",
|
||||
"SighnedRightShiftAssign", "UnsighnedRightShiftAssign", "IDENTIFIER",
|
||||
"JavaLetter", "JavaLetterOrDigit"
|
||||
};
|
||||
}
|
||||
@@ -119,7 +119,7 @@ public class ExprLexer extends Lexer {
|
||||
"SignedRightShift", "UnsignedRightShift", "AddAssign", "SubtractAssign",
|
||||
"MultiplyAssign", "DivideAssign", "BitwiseANDAssign", "BitwiseORAssign",
|
||||
"BitwiseXORAssign", "RemainderAssign", "LeftShiftAssign", "SighnedRightShiftAssign",
|
||||
"UnsighnedRightShiftAssign", "Identifier"
|
||||
"UnsighnedRightShiftAssign", "IDENTIFIER"
|
||||
};
|
||||
}
|
||||
private static final String[] _SYMBOLIC_NAMES = makeSymbolicNames();
|
||||
|
||||
@@ -104,7 +104,7 @@ RemainderAssign=103
|
||||
LeftShiftAssign=104
|
||||
SighnedRightShiftAssign=105
|
||||
UnsighnedRightShiftAssign=106
|
||||
Identifier=107
|
||||
IDENTIFIER=107
|
||||
'abstract'=6
|
||||
'assert'=7
|
||||
'boolean'=8
|
||||
|
||||
44
gen/syntactic.g4
Normal file
44
gen/syntactic.g4
Normal file
@@ -0,0 +1,44 @@
|
||||
parser grammar syntactic;
|
||||
|
||||
options {
|
||||
tokenVocab=ExprLexer;
|
||||
}
|
||||
|
||||
identifier: IDENTIFIER;
|
||||
|
||||
qualifiedIdentifier: identifier {'.' identifier};
|
||||
|
||||
literal: IntegerLiteral
|
||||
| FloatingPointLiteral
|
||||
| CharacterLiteral
|
||||
| StringLiteral
|
||||
| BooleanLiteral
|
||||
| NullLiteral;
|
||||
|
||||
expression: expression1 [assignmentOperator expression1];
|
||||
|
||||
assignmentOperator: Assignment
|
||||
| AddAssign
|
||||
| SubtractAssign
|
||||
| MultiplyAssign
|
||||
| DivideAssign
|
||||
| BitwiseANDAssign
|
||||
| BitwiseORAssign
|
||||
| BitwiseXORAssign
|
||||
| RemainderAssign
|
||||
| LeftShiftAssign
|
||||
| SighnedRightShiftAssign
|
||||
| UnsighnedRightShiftAssign;
|
||||
|
||||
type: identifier {'.' identifier} bracketsOpt
|
||||
| basicType;
|
||||
|
||||
statementExpression: expression;
|
||||
|
||||
constantExpression: expression;
|
||||
|
||||
expression1: expression2 [expression1Rest];
|
||||
|
||||
expression1Rest: ['?' expression ':' expression1];
|
||||
|
||||
expression2: expression3 [expression2Rest];
|
||||
Reference in New Issue
Block a user