xbe
c55388823f
objstr.c: Replace size_t with machine_uint_t.
11 years ago
xbe
efe3422394
py: Clean up includes.
Remove unnecessary includes. Add includes that improve portability.
11 years ago
Paul Sokolovsky
51bbf6a006
Implement support for __str__ and __repr__ special methods in classes.
11 years ago
Damien George
ecd58aec08
py: Fix bug in vstr_ins_blank_bytes.
11 years ago
Damien George
280e7208d8
Add vstr_ins and vstr_cut_out; improve stmhal readline.
11 years ago
Dave Hylands
ca5444e6cd
stmhal - add pin mapping, gpio, exti, usrsw
11 years ago
Damien George
536dde254b
py: In string.count, handle case of zero-length needle.
11 years ago
xbe
c5d70ba48b
Fix issues in str.count implementation.
See pull request #343 .
11 years ago
xbe
9e1e8cd642
Implement str.count and add tests for it.
Also modify mp_get_index to accept:
1. Indices that are or evaluate to a boolean.
2. Slice indices.
Add tests for these two cases.
11 years ago
Damien George
470184e2c3
py: Cosmetic changes.
11 years ago
Damien George
8854e1fa05
py: Add expm1 to math module.
11 years ago
mux
8782676514
Fix realloc
11 years ago
Damien George
9d68e9ccdd
py: Implement integer overflow checking for * and << ops.
If operation will overflow, a multi-precision integer is created.
11 years ago
Damien George
bb4a43f35c
py: Fix some bugs in mpz; add mpz_from_ll and mpz_set_from_ll.
A couple of bugs in mpn_shl, and overflow bug in mpz_set_from_int.
11 years ago
Damien George
8bfec2b538
Rename formatfloat file; remove MICROPY_ENABLE_FLOAT from mpconfigport.h.
MICROPY_ENABLE_FLOAT is automatically set in mpconfig.h if MICROPY_FLOAT_IMPL
is set to a non-zero value.
11 years ago
Dave Hylands
ca5a241e48
Add proper floating point printing support.
11 years ago
Dave Hylands
0308f964a0
Fix makeqstrdata.py to work in Python 2.7
11 years ago
Damien George
2da9830b92
py: Make objstr support buffer protocol (read only).
11 years ago
Damien George
0ec6bd47cb
py: Fix printing of type name.
11 years ago
Damien George
0c36da0b59
Implement ROMable modules. Add math module.
mp_module_obj_t can now be put in ROM.
Configuration of float type is now similar to longint: can now choose
none, float or double as the implementation.
math module has basic math functions. For STM port, these are not yet
implemented (they are just stub functions).
11 years ago
Damien George
5260810d70
py: Wrap mpz float functions in MICROPY_ENABLE_FLOAT.
11 years ago
Damien George
fdf0da5436
makeqstrdata: print error to stderr.
11 years ago
Damien George
6fc765c928
py: Revert to old gc_realloc for now.
11 years ago
Damien George
f08ddef676
py: Add comments to new gc_realloc, it has some bugs.
11 years ago
Damien George
73d579354b
py: Small cosmetic changes to gc_realloc.
11 years ago
mux
fbaa1479f4
Fix gc_realloc to expand in place
* Issue #322
11 years ago
Damien George
25f5a30e73
py: Fix overriding of default arguments.
Addresses issue #327 .
11 years ago
Damien George
f41fdd05b0
py: Unify syntax error handling in compiler; check defualt arg syntax.
Checks for non-default args following default args, and errors out.
Addresses issue #328 .
11 years ago
Damien George
715101580b
py: Factor and improve issubclass.
11 years ago
Paul Sokolovsky
e74f52b76c
namedtuple: Inherit unary/binary ops from tuple base class.
11 years ago
Paul Sokolovsky
d86d22e1e7
Add mp_obj_is_subclass_fast() - intended for fast argument checking.
I.e. as replacement of MP_OBJ_IS_TYPE(), which takes into account subclassing.
11 years ago
Paul Sokolovsky
d08fd68664
Add basic collections.namedtuple implementation.
11 years ago
Damien George
06201ff3d6
py: Implement bit-shift and not operations for mpz.
Implement not, shl and shr in mpz library. Add function to create mpzs
on the stack, used for memory efficiency when rhs is a small int.
Factor out code to parse base-prefix of number into a dedicated function.
11 years ago
Paul Sokolovsky
9c7e984a05
nlrthumb.S: Comment out ".cpu cortex-m4", it causes problems on Cortex-A.
11 years ago
Paul Sokolovsky
82a165d9be
nlr.h: Do proper arch selection, using the same tests as nlr*.S .
11 years ago
Damien George
ce1162ab15
GC: Fix printf formats for debugging; add gc_dump_alloc_table.
11 years ago
Damien George
41eb6086b7
py: Remove more var arg names fro macros with var args.
11 years ago
Damien George
d5e81826ec
py: Reduce size of mp_obj_fun_native_t struct by packing ints.
11 years ago
Damien George
510477557d
py: Take out bitfield entries from their own structure.
Don't need to wrap bitfields in their own struct. Compiler does the
correct thing without it.
11 years ago
Damien George
1dc76af7bf
py: Remove name of var arg from macros with var args.
11 years ago
Damien George
c5ac2ac590
py: Start to implement shl/shr for mpz. Fix return void.
11 years ago
Damien George
aca141269e
py: Fix mpn_sub, was increasing wrong source pointer.
Also change int -> machine_int_t where appropriate.
11 years ago
Damien George
438c88dd2f
Add arbitrary precision integer support.
Some functionality is still missing (eg and, or, bit shift), and some
things are buggy (eg subtract).
11 years ago
Damien George
2077397118
py: Put number parsing code together in parsenum.c.
11 years ago
Damien George
2613ffde43
py: Rename strtonum to mp_strtonum.
strtonum clashes with BSD function of same name, and our version is
different so warrants a unique name. Addresses Issue #305 .
11 years ago
Damien George
0379b55ab0
py: Fix casting and printing of small int.
11 years ago
Paul Sokolovsky
56e5ef203b
parse: Refactor parse node encoding to support full range of small ints.
Based on suggestion by @dpgeorge at
https://github.com/micropython/micropython/pull/313
11 years ago
Paul Sokolovsky
bbf0e2fe12
parse: Note that fact that parser's small ints are different than VM small int.
Specifically, VM's small ints are 31 bit, while parser's only 28. There's already
MP_OBJ_FITS_SMALL_INT(), so, for clarity, rename MP_FIT_SMALL_INT() to
MP_PARSE_FITS_SMALL_INT().
11 years ago
Paul Sokolovsky
1d30b11685
showbc: Update for recent int varlen storage refactor.
TODO: De-duplicate DECODE_UINT, etc. definitions.
11 years ago
Paul Sokolovsky
feacaa12ac
__import__: Catch relative import attempts and throw NotImplementedError.
11 years ago