diff options
feat!: Add basic lexer components
1 files changed, 15 insertions, 0 deletions
| -rw-r--r-- | src/StringConsumer/WhitespaceConsumer.cl | 15 |
diff --git a/src/StringConsumer/WhitespaceConsumer.cl b/src/StringConsumer/WhitespaceConsumer.cl new file mode 100644 index 0000000..4c0b8b5 --- /dev/null +++ b/src/StringConsumer/WhitespaceConsumer.cl @@ -0,0 +1,15 @@ +class WhitespaceConsumer inherits IStringConsumer { + consume(s: String) : Int {{ + consumed_length <- 0; + while or(s.substr(consumed_length, 1) = " ", + s.substr(consumed_length, 1) = "\t") + loop + consumed_length <- consumed_length + 1 + pool; + consumed_length; + }}; + + token() : IToken { + new WhitespaceToken + }; +}; |
