Commit Graph

15 Commits

Author SHA1 Message Date
amery ff03ee922d lexer: introduce Error{}
Signed-off-by: Alejandro Mery <amery@jpi.io>
2023-08-29 02:41:48 +00:00
amery 868786cb9f lexer: introduce a Position (Line, Column) handler
Signed-off-by: Alejandro Mery <amery@jpi.io>
2023-08-29 02:10:46 +00:00
amery 3e964d1455 lexer: introduce StateFn and the basic state machine loop
Signed-off-by: Alejandro Mery <amery@jpi.io>
2023-08-29 02:10:03 +00:00
amery 530eff87e9 lexer: introduce Reader.Accept()/AcceptAll()
Signed-off-by: Alejandro Mery <amery@jpi.io>
2023-08-29 02:10:03 +00:00
amery c3339a2cdb build-sys: import build system from darvaza.org/core
Signed-off-by: Alejandro Mery <amery@jpi.io>
2023-08-29 02:03:53 +00:00
amery 5e3171d891 Merge branch 'pr-amery-reader' 2023-08-29 02:03:36 +00:00
amery 6cca2996ca lexer: Implement Reader.UnreadRune() and Reader.PeekRune()
Signed-off-by: Alejandro Mery <amery@jpi.io>
2023-08-29 02:00:43 +00:00
amery edcba80baa lexer: fix ReadRune() to actually move the cursor
Signed-off-by: Alejandro Mery <amery@jpi.io>
2023-08-29 02:00:38 +00:00
amery 7230a74f49 lexer: runes.Reader renamed to lexer.Reader
Signed-off-by: Alejandro Mery <amery@jpi.io>
2023-08-29 01:59:09 +00:00
amery 1b223e3751 introduce NewReadCloser to allow byte and string buffers to offer io.ReadCloser
Signed-off-by: Alejandro Mery <amery@jpi.io>
2023-08-28 22:06:52 +00:00
amery 07b652c414 chore: rename module to asciigoat.org/core
Signed-off-by: Alejandro Mery <amery@jpi.io>
v0.3.0
2023-08-28 17:51:55 +00:00
amery eaa846b64b runes.Reader: simplify buffer handling
Signed-off-by: Alejandro Mery <amery@jpi.io>
2023-08-28 05:01:23 +00:00
amery fef0d81610 runes.Reader: introduce String(), Emit() and Discard()
Signed-off-by: Alejandro Mery <amery@jpi.io>
2023-08-28 04:45:25 +00:00
amery fad6357d91 runes: initial RuneReader implementation
Signed-off-by: Alejandro Mery <amery@jpi.io>
2023-08-28 04:33:44 +00:00
amery f6a391904d Initial commit
Signed-off-by: Alejandro Mery <amery@jpi.io>
2023-08-27 23:20:56 +00:00