Dateien nach "/" hochladen
This commit is contained in:
commit
c6c77579ce
218
Grammatik.txt
Normal file
218
Grammatik.txt
Normal file
@ -0,0 +1,218 @@
|
|||||||
|
Grammatik:
|
||||||
|
|
||||||
|
1. Ausdrücke
|
||||||
|
|
||||||
|
Primary:
|
||||||
|
Literal
|
||||||
|
Variable
|
||||||
|
IncDecExpression
|
||||||
|
( Expression )
|
||||||
|
MethodInvocation
|
||||||
|
|
||||||
|
Variable:
|
||||||
|
Identifier { [ Expression ] }
|
||||||
|
|
||||||
|
Identifier:
|
||||||
|
[ Identifier . ] Name
|
||||||
|
|
||||||
|
IncDecExpression:
|
||||||
|
Variable IncDec
|
||||||
|
IncDec Variable
|
||||||
|
|
||||||
|
IncDec:
|
||||||
|
++ | --
|
||||||
|
|
||||||
|
Expression:
|
||||||
|
UnaryExpression
|
||||||
|
BinaryExpression
|
||||||
|
ConditionalExpression
|
||||||
|
AssignmentExpression
|
||||||
|
MethodInvocation
|
||||||
|
CreationExpression
|
||||||
|
|
||||||
|
UnaryExpression:
|
||||||
|
Primary
|
||||||
|
UnaryOperator
|
||||||
|
UnaryExpression
|
||||||
|
UnaryOperator
|
||||||
|
+ | - | ! | ...
|
||||||
|
|
||||||
|
BinaryExpression:
|
||||||
|
Expression BinaryOperator Expression
|
||||||
|
|
||||||
|
BinaryOperator:
|
||||||
|
+ | - | * | / | & | && | | | || | ...
|
||||||
|
|
||||||
|
|
||||||
|
AssignmentExpression:
|
||||||
|
Variable AssignmentOperator Expression
|
||||||
|
|
||||||
|
AssignmentOperator:
|
||||||
|
= | += | -= | *= | /= | ...
|
||||||
|
|
||||||
|
MethodInvocation:
|
||||||
|
Method ( [ ActualArguments ] )
|
||||||
|
|
||||||
|
Method:
|
||||||
|
Identifier
|
||||||
|
|
||||||
|
ActualArguments:
|
||||||
|
Expression { , Expression }
|
||||||
|
|
||||||
|
CreationExpression:
|
||||||
|
new ClassIdentifier ( [ ActualArguments ] )
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
2. Anweisungen
|
||||||
|
|
||||||
|
Statement:
|
||||||
|
SimpleStatement
|
||||||
|
CompositeStatement
|
||||||
|
Label : Statement
|
||||||
|
|
||||||
|
SimpleStatement:
|
||||||
|
EmptyStatement
|
||||||
|
ExpressionStatement
|
||||||
|
JumpStatement
|
||||||
|
EmptyStatement ;
|
||||||
|
|
||||||
|
ExpressionStatement:
|
||||||
|
StatementExpression ;
|
||||||
|
|
||||||
|
StatementExpression:
|
||||||
|
AssignmentExpression
|
||||||
|
IncDecExpression
|
||||||
|
MethodInvocation
|
||||||
|
CreationExpression
|
||||||
|
|
||||||
|
JumpStatement:
|
||||||
|
BreakStatement
|
||||||
|
ContinueStatement
|
||||||
|
ReturnStatement
|
||||||
|
BreakStatement
|
||||||
|
break [ Label ] ;
|
||||||
|
|
||||||
|
ContinueStatement:
|
||||||
|
continue [ Label ] ;
|
||||||
|
|
||||||
|
ReturnStatement.
|
||||||
|
return [ Expression ] ;
|
||||||
|
|
||||||
|
Label:
|
||||||
|
Name
|
||||||
|
|
||||||
|
CompositeStatement:
|
||||||
|
Block
|
||||||
|
CaseStatement
|
||||||
|
RepetitiveStatement
|
||||||
|
|
||||||
|
Block:
|
||||||
|
{ { VariableDeclaration | Statement } }
|
||||||
|
VariableDeclaration [ final ] Type VariableDeclarators ;
|
||||||
|
VariableDeclarators VariableDeclarator { , VariableDeclarator }
|
||||||
|
VariableDeclarator Name [ = Expression ]
|
||||||
|
|
||||||
|
Type:
|
||||||
|
PrimitiveType
|
||||||
|
ClassType
|
||||||
|
|
||||||
|
PrimitiveType:
|
||||||
|
Name
|
||||||
|
|
||||||
|
ClassType:
|
||||||
|
Identifier
|
||||||
|
|
||||||
|
CaseStatement:
|
||||||
|
ConditionalStatement
|
||||||
|
SwitchStatement
|
||||||
|
RepetitiveStatement WhileStatement
|
||||||
|
DoStatement
|
||||||
|
ForStatement
|
||||||
|
|
||||||
|
ConditionalStatement:
|
||||||
|
if ( Expression ) Statement [ else Statement ]
|
||||||
|
|
||||||
|
SwitchStatement:
|
||||||
|
switch ( Expression ) SwitchBlock
|
||||||
|
|
||||||
|
SwitchBlock:
|
||||||
|
{ { CaseGroup } }
|
||||||
|
|
||||||
|
CaseGroup:
|
||||||
|
SwitchLabel { SwitchLabel } StatementSequence
|
||||||
|
|
||||||
|
SwitchLabel:
|
||||||
|
case ConstantExpression :
|
||||||
|
default :
|
||||||
|
|
||||||
|
ConstantExpression:
|
||||||
|
Expression
|
||||||
|
|
||||||
|
WhileStatement:
|
||||||
|
while ( Expression ) Statement
|
||||||
|
|
||||||
|
DoStatement:
|
||||||
|
do Statement while ( Expression ) ;
|
||||||
|
|
||||||
|
ForStatement:
|
||||||
|
for ( [ Initialization ] ; [ Expression ] ; [ Update ] ) Statement
|
||||||
|
|
||||||
|
Initialization:
|
||||||
|
StatementExpression { , StatementExpression }
|
||||||
|
VariableDeclaration
|
||||||
|
|
||||||
|
Update:
|
||||||
|
StatementExpression { , StatementExpression }
|
||||||
|
|
||||||
|
|
||||||
|
3. Methoden
|
||||||
|
|
||||||
|
MethodDeclaration:
|
||||||
|
MethodHeader MethodBody
|
||||||
|
|
||||||
|
MethodHeader:
|
||||||
|
{ Modifier } ResultType MethodDeclarator
|
||||||
|
|
||||||
|
Modifier:
|
||||||
|
public | static | ...
|
||||||
|
|
||||||
|
ResultType:
|
||||||
|
Type | void
|
||||||
|
|
||||||
|
MethodDeclarator:
|
||||||
|
Identifier ( [ FormalArguments ] )
|
||||||
|
|
||||||
|
FormalArguments:
|
||||||
|
FormalArgument { , FormalArgument }
|
||||||
|
|
||||||
|
FormalArgument:
|
||||||
|
Type Name
|
||||||
|
|
||||||
|
MethodBody:
|
||||||
|
; | Block
|
||||||
|
|
||||||
|
|
||||||
|
4. Klassen
|
||||||
|
|
||||||
|
ClassDeclaration:
|
||||||
|
[ public ] class Name ClassBody
|
||||||
|
|
||||||
|
ClassBody:
|
||||||
|
{ { { Modifier } Declaration } }
|
||||||
|
|
||||||
|
Declaration:
|
||||||
|
FieldDeclaration
|
||||||
|
MethodDeclaration
|
||||||
|
ClassDeclaration
|
||||||
|
ConstructorDeclaration
|
||||||
|
Initializer
|
||||||
|
|
||||||
|
FieldDeclaration:
|
||||||
|
VariableDeclaration
|
||||||
|
|
||||||
|
ConstructorDeclaration:
|
||||||
|
[ public ] Name ( [ FormalArguments ] ) Block
|
||||||
|
|
||||||
|
Initializer:
|
||||||
|
[ static ] Block
|
Loading…
Reference in New Issue
Block a user