diff options
author | Damien George <damien.p.george@gmail.com> | 2014-02-22 19:25:23 +0000 |
---|---|---|
committer | Damien George <damien.p.george@gmail.com> | 2014-02-22 19:25:23 +0000 |
commit | 438c88dd2fbf8250883882188cca513ce534271f (patch) | |
tree | 601f43c00efc8ad90d04891ddc61cbb6351a6aeb /py/objint.h | |
parent | 20773971186151b53426bd607908546598036a16 (diff) |
Add arbitrary precision integer support.
Some functionality is still missing (eg and, or, bit shift), and some
things are buggy (eg subtract).
Diffstat (limited to 'py/objint.h')
-rw-r--r-- | py/objint.h | 6 |
1 files changed, 2 insertions, 4 deletions
diff --git a/py/objint.h b/py/objint.h index 00f9e51d4..53ee49e7d 100644 --- a/py/objint.h +++ b/py/objint.h @@ -2,13 +2,11 @@ typedef struct _mp_obj_int_t { mp_obj_base_t base; #if MICROPY_LONGINT_IMPL == MICROPY_LONGINT_IMPL_LONGLONG mp_longint_impl_t val; +#elif MICROPY_LONGINT_IMPL == MICROPY_LONGINT_IMPL_MPZ + mpz_t mpz; #endif } mp_obj_int_t; void int_print(void (*print)(void *env, const char *fmt, ...), void *env, mp_obj_t self_in, mp_print_kind_t kind); mp_obj_t int_unary_op(int op, mp_obj_t o_in); mp_obj_t int_binary_op(int op, mp_obj_t lhs_in, mp_obj_t rhs_in); - -#if MICROPY_LONGINT_IMPL != MICROPY_LONGINT_IMPL_NONE -mp_obj_t mp_obj_new_int_from_ll(long long val); -#endif |