From 75985de125a4069be286d3d61f2851cff99e3b09 Mon Sep 17 00:00:00 2001 From: Krzosa Karol Date: Wed, 1 Jun 2022 19:12:56 +0200 Subject: [PATCH] Add more operators to lexer --- new_parse.cpp | 15 +++++++++++---- 1 file changed, 11 insertions(+), 4 deletions(-) diff --git a/new_parse.cpp b/new_parse.cpp index 8df5e2b..fa6a268 100644 --- a/new_parse.cpp +++ b/new_parse.cpp @@ -350,24 +350,31 @@ binding_power(Binding binding, Token_Kind kind){ default: return {-1, -1}; } Infix: switch(kind){ + case TK_Or: + return {9,10}; + case TK_And: + return {11,12}; case TK_Equals: case TK_NotEquals: case TK_GreaterThen: case TK_GreaterThenOrEqual: case TK_LesserThen: case TK_LesserThenOrEqual: - return {3,4}; + return {13,14}; case TK_Sub: case TK_Add: - return {5,6}; + case TK_BitOr: + case TK_BitXor: + return {15,16}; case TK_RightShift: case TK_LeftShift: + case TK_BitAnd: case TK_Mul: case TK_Div: case TK_Mod: - return {7,8}; + return {17,18}; case TK_Dot: - return {10,9}; + return {20,19}; default: return {}; } Postfix: switch(kind){