diff options
| author | Keith Packard <keithp@keithp.com> | 2017-12-14 23:04:39 -0800 | 
|---|---|---|
| committer | Keith Packard <keithp@keithp.com> | 2017-12-14 23:04:39 -0800 | 
| commit | 32f6877288ea6b7eb1cae9a42fbe8e2c5dbb2f08 (patch) | |
| tree | 4e23989a62ae144b8cbf1d2fd135ca8a6bd743dc /src/scheme/ao_scheme_poly.c | |
| parent | 2e11cae044cd2c053049effd76df9c5adecb84d7 (diff) | |
altos/scheme: swap BIGINT and STRING types
This lets BIGINT be a primitive type, allowing it to use all 32 bits
for storage. This does make strings another byte longer, and also
slightly harder to deal with. It's a trade off.
Signed-off-by: Keith Packard <keithp@keithp.com>
Diffstat (limited to 'src/scheme/ao_scheme_poly.c')
| -rw-r--r-- | src/scheme/ao_scheme_poly.c | 16 | 
1 files changed, 8 insertions, 8 deletions
| diff --git a/src/scheme/ao_scheme_poly.c b/src/scheme/ao_scheme_poly.c index 0bb427b9..2ea221ec 100644 --- a/src/scheme/ao_scheme_poly.c +++ b/src/scheme/ao_scheme_poly.c @@ -24,10 +24,12 @@ static const struct ao_scheme_funcs ao_scheme_funcs[AO_SCHEME_NUM_TYPE] = {  		.write = ao_scheme_cons_write,  		.display = ao_scheme_cons_display,  	}, -	[AO_SCHEME_STRING] = { -		.write = ao_scheme_string_write, -		.display = ao_scheme_string_display, +#ifdef AO_SCHEME_FEATURE_BIGINT +	[AO_SCHEME_BIGINT] = { +		.write = ao_scheme_bigint_write, +		.display = ao_scheme_bigint_write,  	}, +#endif  	[AO_SCHEME_INT] = {  		.write = ao_scheme_int_write,  		.display = ao_scheme_int_write, @@ -60,12 +62,10 @@ static const struct ao_scheme_funcs ao_scheme_funcs[AO_SCHEME_NUM_TYPE] = {  		.write = ao_scheme_bool_write,  		.display = ao_scheme_bool_write,  	}, -#ifdef AO_SCHEME_FEATURE_BIGINT -	[AO_SCHEME_BIGINT] = { -		.write = ao_scheme_bigint_write, -		.display = ao_scheme_bigint_write, +	[AO_SCHEME_STRING] = { +		.write = ao_scheme_string_write, +		.display = ao_scheme_string_display,  	}, -#endif  #ifdef AO_SCHEME_FEATURE_FLOAT  	[AO_SCHEME_FLOAT] = {  		.write = ao_scheme_float_write, | 
