authorgravatar for andrew@ziglang.orgAndrew Kelley <andrew@ziglang.org> 2017-12-04 23:29:39-05:00
committergravatar for andrew@ziglang.orgAndrew Kelley <andrew@ziglang.org> 2017-12-04 23:29:39-05:00
log7297baa9c6f3f1b894b47fe7b06b5ae2007d0f3c
treef61f583b7821c159a73d8a784b9f6383ce185f80
parent07898cc0dfae880b35bededa726c7e16a3c45f3d

tokenizing basic operators


1 files changed, 24 insertions(+), 0 deletions(-)

src-self-hosted/main.zig+24
......@@ -73,6 +73,10 @@ const Token = struct {
7373 StringLiteral: StrLitKind,
7474 Eof,
7575 Builtin,
76 Equal,
77 LParen,
78 RParen,
79 Semicolon,
7680 };
7781};
7882
......@@ -130,6 +134,26 @@ const Tokenizer = struct {
130134 state = State.Builtin;
131135 result.id = Token.Id { .Builtin = {} };
132136 },
137 '=' => {
138 result.id = Token.Id { .Equal = {} };
139 self.index += 1;
140 break;
141 },
142 '(' => {
143 result.id = Token.Id { .LParen = {} };
144 self.index += 1;
145 break;
146 },
147 ')' => {
148 result.id = Token.Id { .RParen = {} };
149 self.index += 1;
150 break;
151 },
152 ';' => {
153 result.id = Token.Id { .Semicolon = {} };
154 self.index += 1;
155 break;
156 },
133157 else => {
134158 result.id = Token.Id { .Invalid = {} };
135159 self.index += 1;