shithub: femtolisp

ref: d9d1a7eb98c2fc31292d75c30a9dd6c6fc1bb4f9
dir: /read.h/

View raw version
#pragma once

value_t fl_read_sexpr(value_t f);
bool isnumtok_base(const char *tok, value_t *pval, int base);
bool isnumtok(const char *tok, value_t *pval);

// defines which characters are ordinary symbol characters.
// exceptions are '.', which is an ordinary symbol character
// unless it's the only character in the symbol, and '#', which is
// an ordinary symbol character unless it's the first character.
#define symchar(c) (!strchr("()[]{}'\";`,\\| \a\b\f\n\r\t\v", (c)))