shithub: sl

ref: fda7b9cf12d964a4a482fc252ef26dc29e7eaed1
dir: /src/read.h/

View raw version
#pragma once

extern const char *ascii2name[0x20+1];

sl_v sl_read_sexpr(sl_v f, bool ws);
bool sl_read_numtok(const char *tok, sl_v *pval, int base);
void sl_read_init(void);

// 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)))