Knoten
In dieser Grammatik sind abstrakte Knoten enthalten. Diese sind nicht instanziierbar und sowohl durch einen Kommentar, als auch durch kursiven Titel kenntlich gemacht.
Context
Prog
Prog stellt den Wurzelknoten jeder R-Datei dar. (blau)
ParameterList
Ist der Wurzelknoten für Parameter einer aufgerufenen Funktion. (rot)
AnonParameterList
var <- (function (x) x + 3) (10)
Ist die Parameter-Liste, die bei einer anonymen Funktion verwendet wird, z.B.
var <- (function (x) x + 3)(10)
IndexList
Ist der Oberknoten der Liste der verwendeteten Indizes durch Angabe einer eckigen Klammer, z.B.
y <- array[1]
DoubleIndexList
Ist der Oberknoten der Liste der verwendeteten Indizes durch Angabe von zwei eckigen Klammern, z.B.
z <- otherarray2
Indexing
Ist ein Zwischenknoten für die Indexierung (IndexList, DoubleIndexList)
UnaryExpression
Ist ein abstrakter Knoten.
Negative
Ist der "-"-Operator vor einer Zahl, Variable oder Expression, z.B.
var <- -(x + -3)
Positive
Ist der "+"-Operator vor einer Zahl, Variable oder Expression, z.B.
var <- +5
Element
Literal
BooleanLiteral
ComplexLiteral
IntegerLiteral
NumericLiteral
StringLiteral
NullLiteral
ID
FunctionCall
Variable
Operator
ArithmeticOperator
AddOperator
SubOperator
MulOperator
DivOperator
ExpOperator
RemainderOperator
FloorOperator
RelationalOperator
GreaterOperator
LesserOperator
GreaterEqOperator
LesserEqOperator
EqualOperator
UnequalOperator
InOperator
LogicalOperator
AndOperator
OrOperator
NotOperator
AndOperatorFirstElement
OrOperatorFirstElement
AssignmentOperator
LeftAssignmentOperator
LeftAssignmentOperator1
LeftAssignmentOperator2
LeftAssignmentOperator3
LeftAssignmentOperator4
RightAssignmentOperator
RightAssignmentOperator1
RightAssignmentOperator2
MiscOperator
SequenceOperator
ContainsOperator
MatrixMulOperator
TildeOperator
Statement
Block
IfStatement
SwitchStatement
Loop
WhileStatement
RepeatStatement
ForStatement
BreakStatement
NextStatement
Unsortiert
AnonFunctionDeclaration
NamedElement
FunctionDeclaration
ReturnStatement
Kanten
AssignmentOperator
LeftHandSide
RightHandSide
Block
BodyStatements
ForStatement
CountVariable
Set
SetVariable
FunctionCall
List
IfStatement
Condition
ElseBody
ThenBody
Node
Expression
ParameterList
Parameter
Prog
ProgStatements
Statement
StatementBody