diff options
| author | 2024-12-28 21:27:24 -0500 | |
|---|---|---|
| committer | 2024-12-28 21:27:24 -0500 | |
| commit | e9c8de093bac0697c41a9e01542163de1d6cbb1c (patch) | |
| tree | 8ec23ce11a7500bec4ebdc2890ed8284fc7b9ae5 /mcgoron.iterator.string.sld | |
| parent | refactor tests, add working code for list (diff) | |
refactor iterators to be closure objects
This makes iterators much more flexible while keeping their abstract
nature. New iterators can be made by a programmer with different
methods.
Existing iterator types cannot be programatically extended. This
would likely require implementation support: either CLOS-style
classes or a more limited single-dispatch interface system.
Diffstat (limited to '')
| -rw-r--r-- | mcgoron.iterator.string.sld | 11 |
1 files changed, 6 insertions, 5 deletions
diff --git a/mcgoron.iterator.string.sld b/mcgoron.iterator.string.sld index 9b8a388..ae2bb99 100644 --- a/mcgoron.iterator.string.sld +++ b/mcgoron.iterator.string.sld @@ -17,11 +17,12 @@ (import (scheme base) (srfi 130) (srfi 128) (srfi 26) (mcgoron iterator base) - (mcgoron iterator exceptions)) - (export cursor->iterator + (mcgoron iterator exceptions) + (mcgoron iterator string exceptions) + (mcgoron iterator srfi 128)) + (export string-iterator + string-iterator? string-iterator-start string-iterator-end - string-index->iterator - string-iterator-constructor-exception? - string-iterator-constructor-exception:obj) + string-index->iterator) (include "mcgoron.iterator.string.scm")) |
