: STRING:
CREATE dup reset-generic
- parse-here 1quotation define ; parsing
+ parse-here 1quotation define-inline ; parsing
: (parse-multiline-string) ( start-index end-text -- end-index )
- lexer get lexer-line-text 2dup start
- [ rot dupd >r >r swap subseq % r> r> length + ] [
- rot tail % "\n" % 0
- lexer get next-line swap (parse-multiline-string)
- ] if* ;
+ lexer get lexer-line-text [
+ 2dup start
+ [ rot dupd >r >r swap subseq % r> r> length + ] [
+ rot tail % "\n" % 0
+ lexer get next-line swap (parse-multiline-string)
+ ] if*
+ ] [ nip unexpected-eof ] if* ;
: parse-multiline-string ( end-text -- str )
[