diff options
| Commit | 61f138b20a2a26a08155f414049acc0bb348ed31 (patch) | |
|---|---|---|
| Author | 2025-11-01 17:19:28 +0200 | |
| Committer | 2025-11-01 17:19:28 +0200 | |
| Files | a9765005fab4894081197000836fa8053c895cb1 | |
| cool-self-hosted-61f138b20a2a26a08155f414049acc0bb348ed31.tar cool-self-hosted-61f138b20a2a26a08155f414049acc0bb348ed31.tar.gz cool-self-hosted-61f138b20a2a26a08155f414049acc0bb348ed31.zip | ||
| Parent | 8e9fcf5323a5089ac889115f2ba055d69afe72d4 (diff) | |
feat(main): Try to consume the entire input
2 files changed, 9 insertions, 4 deletions
| -rw-r--r-- | src/StringConsumer/StringConsumerEngine.cl | 4 | ||||
| -rw-r--r-- | src/main.cl | 9 |
diff --git a/src/StringConsumer/StringConsumerEngine.cl b/src/StringConsumer/StringConsumerEngine.cl index 585b76d..6fe4403 100644 --- a/src/StringConsumer/StringConsumerEngine.cl +++ b/src/StringConsumer/StringConsumerEngine.cl @@ -33,4 +33,8 @@ class StringConsumerEngine inherits System { out() : Object { out_string(str) }; + + empty() : Bool { + str = "" + }; }; diff --git a/src/main.cl b/src/main.cl index 9ebb87b..4040444 100644 --- a/src/main.cl +++ b/src/main.cl @@ -2,9 +2,10 @@ class Main inherits System { sce: StringConsumerEngine <- new StringConsumerEngine; main() : Object {{ - sce.init(" abc"); - sce.try_consume(); - sce.try_consume(); - sce.out(); + sce.init(" "); + while not sce.empty() + loop + assert(sce.try_consume(), "main", "couldn't consume entire input!") + pool; }}; }; |
