31 Commits (3f8bb80eb2da1c2b5228a69f7c580d0bc2d37219)

Author SHA1 Message Date
Damien George 22b2265053 py/parse: Improve constant folding to operate on small and big ints. 9 years ago
Damien George 2fe7e6bef0 py/parse: Include stddef.h for definition of size_t. 9 years ago
Damien George 16a6a47a7b py/parse: Replace mp_int_t/mp_uint_t with size_t etc, where appropriate. 9 years ago
Damien George 999cedb90f py: Wrap all obj-ptr conversions in MP_OBJ_TO_PTR/MP_OBJ_FROM_PTR. 9 years ago
Damien George 58e0f4ac50 py: Allocate parse nodes in chunks to reduce fragmentation and RAM use. 9 years ago
Damien George dfe944c3e5 py: Expose compile.c:list_get as mp_parse_node_extract_list. 10 years ago
Damien George 7d414a1b52 py: Parse big-int/float/imag constants directly in parser. 10 years ago
Damien George 0bfc7638ba py: Protect mp_parse and mp_compile with nlr push/pop block. 10 years ago
Damien George 51dfcb4bb7 py: Move to guarded includes, everywhere in py/ core. 10 years ago
Paul Sokolovsky 8ab6f90674 py: Move to guarded includes for compile.h and related headers. 10 years ago
Damien George 42f3de924b py: Convert [u]int to mp_[u]int_t where appropriate. 10 years ago
Damien George 381618269a parser: Convert (u)int to mp_(u)int_t. 11 years ago
Damien George 40f3c02682 Rename machine_(u)int_t to mp_(u)int_t. 11 years ago
Damien George d1e355ea8e py: Fix check of small-int overflow when parsing ints. 11 years ago
Damien George 5042bce8fb py: Don't automatically intern strings in parser. 11 years ago
Paul Sokolovsky 9e76b1181b Draft approach towards resolving https://github.com/micropython/micropython/issues/560#issuecomment-42213955 11 years ago
Damien George 04b9147e15 Add license header to (almost) all files. 11 years ago
Damien George 58ba4c3b4c py: Check explicitly for memory allocation failure in parser. 11 years ago
Damien George 2077397118 py: Put number parsing code together in parsenum.c. 11 years ago
Paul Sokolovsky 56e5ef203b parse: Refactor parse node encoding to support full range of small ints. 11 years ago
Paul Sokolovsky bbf0e2fe12 parse: Note that fact that parser's small ints are different than VM small int. 11 years ago
Damien George c5966128c7 Implement proper exception type hierarchy. 11 years ago
Damien George b829b5caec Implement mp_parse_node_free; print properly repr(string). 11 years ago
Paul Sokolovsky aee2ba70de Add parse_node_free_struct() and use it to free parse tree after compilation. 11 years ago
Damien George cbd2f7482c py: Add module/function/class name to exceptions. 11 years ago
Damien George 08335004cf Add source file name and line number to error messages. 11 years ago
Damien George 9528cd66d7 Convert parse errors to exceptions. 11 years ago
Damien d99b05282d Change object representation from 1 big union to individual structs. 11 years ago
Damien 5ac1b2efbd Implement REPL. 11 years ago
Damien 0efb3a1b66 Tidy up SMALL_INT optimisations and CPython compatibility. 11 years ago
Damien 429d71943d Initial commit. 11 years ago