Incrementally parses values from a string.
st
must contain valid GameLisp source text. The function parses zero or one values from
the start of the string, returning a three-element array, (tag val chars-read)
.
tag
is a symbol: eitherok
orend-of-input
.val
is the parsed value, or#n
.chars-read
is an integer, the number of characters consumed from the beginning ofst
.
filename
can be used to specify a nominal filename for error-reporting. It does not
need to refer to an actual file.
It's usually more convenient to call parse-all
or parse-1
,
rather than using this function.