diff options
Diffstat (limited to 'liblali.h')
-rw-r--r-- | liblali.h | 9 |
1 files changed, 6 insertions, 3 deletions
@@ -70,8 +70,8 @@ struct Object { Type type; size_t size; union { - struct { double number; }; // number - struct { char string[sizeof (Object *[3])]; }; // string, symbol + /* struct { double number; }; // number */ + struct { char string[sizeof (Object *[3])]; }; // string, symbol, number struct { Object *car, *cdr; }; // cons struct { Object *params, *body, *env; }; // lambda, macro struct { int primitive; char *name; }; // primitive @@ -188,7 +188,8 @@ Object *newObject(Type type, GC_PARAM); Object *newObjectFrom(Object **from, GC_PARAM); -Object *newNumber(double number, GC_PARAM); +//Object *newNumber(double number, GC_PARAM); +Object *newNumber(char *string, GC_PARAM); Object *newObjectWithString(Type type, size_t size, GC_PARAM); @@ -255,6 +256,8 @@ Object *readList(Stream *stream, GC_PARAM); // WRITING OBJECTS //////////////////////////////////////////////////////////// +char *removeZeroPadding(char *string); + void writeObject(Object *object, bool readably, FILE *file); // ENVIRONMENT //////////////////////////////////////////////////////////////// |