diff options
| author | Marc Vertes <mvertes@free.fr> | 2023-11-20 15:54:52 +0100 |
|---|---|---|
| committer | Marc Vertes <mvertes@free.fr> | 2023-11-20 15:54:52 +0100 |
| commit | 6a0490257bf235d011004bc303306f617ac6ea31 (patch) | |
| tree | e04160a26f78afaa60c4b18b3b16662d35106d97 /lang/token.go | |
| parent | 001ca51323a1a54c9b3db377f0783c330666c480 (diff) | |
parser: add support for unary operators
Diffstat (limited to 'lang/token.go')
| -rw-r--r-- | lang/token.go | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/lang/token.go b/lang/token.go index a894c98..4bf9bf2 100644 --- a/lang/token.go +++ b/lang/token.go @@ -116,6 +116,16 @@ const ( EqualSet ) +var UnaryOp = map[TokenId]TokenId{ + Add: Plus, // + + And: Address, // & + Not: Not, // ! + Mul: Deref, // * + Sub: Minus, // - + Tilde: Tilde, // ~ + Xor: BitComp, // ^ +} + func (t TokenId) IsKeyword() bool { return t >= Break && t <= Var } func (t TokenId) IsLiteral() bool { return t >= Char && t <= String } func (t TokenId) IsOperator() bool { return t >= Add && t <= Tilde } |
