diff options
Diffstat (limited to 'LuaSL/src/LuaSL_yaccer.y')
-rw-r--r-- | LuaSL/src/LuaSL_yaccer.y | 34 |
1 files changed, 25 insertions, 9 deletions
diff --git a/LuaSL/src/LuaSL_yaccer.y b/LuaSL/src/LuaSL_yaccer.y index 7f873c2..b9721f8 100644 --- a/LuaSL/src/LuaSL_yaccer.y +++ b/LuaSL/src/LuaSL_yaccer.y | |||
@@ -13,19 +13,35 @@ | |||
13 | %type <spaceValue> ignorable | 13 | %type <spaceValue> ignorable |
14 | %token <spaceValue> LSL_SPACE | 14 | %token <spaceValue> LSL_SPACE |
15 | 15 | ||
16 | %type <expressionValue> expr | 16 | %type <expressionValue> expr |
17 | %left LSL_BOOL_AND | 17 | %left LSL_BOOL_AND |
18 | %left LSL_BOOL_OR | 18 | %left LSL_BOOL_OR |
19 | %left LSL_BIT_AND LSL_BIT_XOR LSL_BIT_OR | 19 | %left LSL_BIT_AND LSL_BIT_XOR LSL_BIT_OR |
20 | %left LSL_EQUAL LSL_NOT_EQUAL | 20 | %left LSL_EQUAL LSL_NOT_EQUAL |
21 | %left LSL_LESS_THAN LSL_GREATER_THAN LSL_LESS_EQUAL LSL_GREATER_EQUAL | 21 | %left LSL_LESS_THAN LSL_GREATER_THAN LSL_LESS_EQUAL LSL_GREATER_EQUAL |
22 | %left LSL_LEFT_SHIFT LSL_RIGHT_SHIFT | 22 | %left LSL_LEFT_SHIFT LSL_RIGHT_SHIFT |
23 | %left LSL_SUBTRACT LSL_ADD | 23 | %left LSL_SUBTRACT LSL_ADD |
24 | %left LSL_DIVIDE LSL_MODULO LSL_MULTIPLY | 24 | %left LSL_DIVIDE LSL_MODULO LSL_MULTIPLY |
25 | %right LSL_BIT_NOT LSL_BOOL_NOT LSL_NEGATION | 25 | %right LSL_BIT_NOT LSL_BOOL_NOT LSL_NEGATION |
26 | %left LSL_ANGLE_OPEN LSL_ANGLE_CLOSE | ||
27 | %token LSL_BRACKET_OPEN LSL_BRACKET_CLOSE | ||
26 | %token LSL_PARENTHESIS_OPEN LSL_PARENTHESIS_CLOSE LSL_EXPRESSION | 28 | %token LSL_PARENTHESIS_OPEN LSL_PARENTHESIS_CLOSE LSL_EXPRESSION |
29 | %right LSL_ASSIGNMENT_ADD LSL_ASSIGNMENT_SUBTRACT LSL_ASSIGNMENT_MULTIPLY LSL_ASSIGNMENT_MODULO LSL_ASSIGNMENT_DIVIDE LSL_ASSIGNMENT_PLAIN | ||
30 | %right LSL_DOT | ||
31 | %right LSL_DECREMENT_PRE LSL_INCREMENT_PRE | ||
32 | %token LSL_COMMA | ||
33 | |||
34 | %token <floatValue> LSL_FLOAT | ||
27 | %token <integerValue> LSL_INTEGER | 35 | %token <integerValue> LSL_INTEGER |
28 | 36 | ||
37 | %nonassoc LSL_TYPE_FLOAT LSL_TYPE_INTEGER LSL_TYPE_KEY LSL_TYPE_LIST LSL_TYPE_ROTATION LSL_TYPE_STRING LSL_TYPE_VECTOR | ||
38 | |||
39 | %nonassoc LSL_DO LSL_FOR LSL_ELSE LSL_IF LSL_JUMP LSL_RETURN LSL_STATE_CHANGE LSL_WHILE | ||
40 | |||
41 | %nonassoc LSL_LABEL | ||
42 | |||
43 | %nonassoc LSL_BLOCK_OPEN LSL_BLOCK_CLOSE | ||
44 | |||
29 | %type <statementValue> statement | 45 | %type <statementValue> statement |
30 | %nonassoc LSL_STATEMENT | 46 | %nonassoc LSL_STATEMENT |
31 | 47 | ||