diff options
| author | Marc Vertes <mvertes@free.fr> | 2023-10-14 13:07:24 +0200 |
|---|---|---|
| committer | Marc Vertes <mvertes@free.fr> | 2023-10-14 13:07:24 +0200 |
| commit | e7814f9d8c1d062852f5c9a652a1c4eb3335cf04 (patch) | |
| tree | 2af0a5d3fa6cddd95c2b4644d1220895e34dbb96 /lang | |
| parent | a032cfd881facc8990445fc856de90638c3476bf (diff) | |
parser: implement label, goto and continue statements
Diffstat (limited to 'lang')
| -rw-r--r-- | lang/token.go | 91 |
1 files changed, 46 insertions, 45 deletions
diff --git a/lang/token.go b/lang/token.go index 5347504..995d621 100644 --- a/lang/token.go +++ b/lang/token.go @@ -12,57 +12,58 @@ const ( Char String - // Operators - Add - Sub - Mul - Quo - Rem - And - Or - Xor + // Binary operators (except indicated) + Add // + + Sub // - + Mul // * + Quo // / + Rem // % + And // & + Or // | + Xor // ^ Shl // << Shr // >> - AndNot // + AndNot // &^ - AddAssign - SubAssign - MulAssign - QuoAssign - RemAssign - AndAssign - OrAssign - XorAssign - ShlAssign - ShrAssign - AndNotAssign + AddAssign // += + SubAssign // -= + MulAssign // *= + QuoAssign // /= + RemAssign // %= + AndAssign // &= + OrAssign // |= + XorAssign // ^= + ShlAssign // <<= + ShrAssign // >>= + AndNotAssign // &^= - Land - Lor - Arrow - Inc - Dec - Equal - Less - Greater - Assign - Not - Plus // unitary + - Minus // unitary - - Address // unitary & - Deref // unitary * - NotEqual - LessEqual - GreaterEqual - Define - Ellipsis - Period - Tilde + Land // && + Lor // || + Arrow // unary -> + Inc // ++ + Dec // -- + Equal // == + Less // < + Greater // > + Assign // = + Not // unary ! + Plus // unary + + Minus // unary - + Address // unary & + Deref // unary * + BitComp // unary ^ + NotEqual // != + LessEqual // <= + GreaterEqual // >= + Define // := + Ellipsis // unary ... + Period // . + Tilde // unary ~ // Separators - Comma - Semicolon - Colon + Comma // , + Semicolon // ; + Colon // : // Block tokens ParenBlock // (..) |
