Summary Files Commits Branches @commit @diff @stats
path: root / src / StringConsumer / WhitespaceConsumer.cl
diff options
context:
space:
mode:
1 files changed, 15 insertions, 0 deletions
-rw-r--r--src/StringConsumer/WhitespaceConsumer.cl15
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
+ };
+};