Commit Graph

202 Commits

Author SHA1 Message Date
John R. Lenton a10dba7509 Merge remote-tracking branch 'upstream/master' into list_reverse 2014-01-06 00:08:21 +00:00
Damien George 8137b004b0 Merge branch 'list_remove' of git://github.com/chipaca/micropython into chipaca-list_remove 2014-01-05 23:58:49 +00:00
Damien George aa35fc60d7 Merge pull request #92 from chipaca/list_insert
List insert. Fixes issue #61.
2014-01-05 15:59:00 -08:00
Damien George 17f4497d6d Merge pull request #91 from chipaca/list_index
Fix off-by-one in non-default values of index's 2nd and 3rd arguments.
2014-01-05 15:55:55 -08:00
Damien George 73595feb75 Merge pull request #89 from pfalcon/c99-tagged-structs
Convert many object types structs to use C99 tagged initializer syntax.
2014-01-05 15:54:51 -08:00
John R. Lenton ba3f87c947 Merge remote-tracking branch 'upstream/master' into list_reverse 2014-01-05 22:29:03 +00:00
John R. Lenton d52a0318ce Merge remote-tracking branch 'upstream/master' into list_remove 2014-01-05 22:27:11 +00:00
John R. Lenton 8428b8f3c9 Merge remote-tracking branch 'upstream/master' into list_insert 2014-01-05 22:11:01 +00:00
John R. Lenton c553162ebc Fix off-by-one in non-default values of index's 2nd and 3rd arguments. 2014-01-05 21:57:27 +00:00
Paul Sokolovsky 860ffb0a43 Convert many object types structs to use C99 tagged initializer syntax. 2014-01-05 22:34:09 +02:00
Dave Hylands d986b582c0 Make qstr_init reinitialize last_pool.
This causes the pool to get reinitialized properly on a soft-reset.
2014-01-05 12:08:55 -08:00
Damien George 1703597c0b Merge pull request #80 from xyb/striter
Implements str iterator
2014-01-05 05:53:31 -08:00
Damien George f0691f4ed5 Fix qstr in objlist.c; add more tests for list.index.
list.index fails on an edge case.
2014-01-05 13:44:06 +00:00
xyb 8cfc9f07b9 Implements str iterator 2014-01-05 18:47:51 +08:00
John R. Lenton 7e73a8fd09 Merge remote-tracking branch 'upstream/master' into list_index 2014-01-05 01:57:54 +00:00
Damien George 45b43c21c4 Oops: add objint.c 2014-01-05 01:50:45 +00:00
Damien George a494b29c73 Merge pull request #73 from mikaeleiman/apple-clang-fixes
Apple clang fixes
2014-01-04 12:29:34 -08:00
Damien George 71c5181a8d Convert Python types to proper Python type hierarchy.
Now much more inline with how CPython does types.
2014-01-04 20:21:15 +00:00
Mikael Eiman d67091371d OSX: fixes to make nlrx64.S with Apple's clang (switched to Apple-specific define instead of __llvm__) 2014-01-04 20:27:13 +01:00
Mikael Eiman f53cdd947c OSX: fixes to make nlrx64.S with Apple's clang (forgot a few places) 2014-01-04 20:19:19 +01:00
Mikael Eiman 5d02e2d6fa OSX: fixes to make nlrx64.S with Apple's clang 2014-01-04 20:15:04 +01:00
Damien George e9906ac3d7 Add ellipsis object. 2014-01-04 18:44:46 +00:00
Damien George 4d4bc9533e Merge pull request #70 from chipaca/list_count
Implements list.count. Fixes isue #55.
2014-01-04 10:09:40 -08:00
Damien George eb7bfcb286 Split qstr into pools, and put initial pool in ROM.
Qstr's are now split into a linked-list of qstr pools.  This has 2
benefits: the first pool can be in ROM (huge benefit, since we no longer
use RAM for the core qstrs), and subsequent pools use m_new for the next
pool instead of m_renew (thus avoiding a huge single table for all the
qstrs).

Still would be better to use a hash table, but this scheme takes us part
of the way (eventually convert the pools to hash tables).

Also fixed bug with import.

Also improved the way the module code is referenced (not magic number 1
anymore).
2014-01-04 15:57:35 +00:00
John R. Lenton 505dd00f07 Merge remote-tracking branch 'upstream/master' into list_count 2014-01-04 14:16:24 +00:00
Damien George e67ed5d285 Improve configurability for native x64/thumb emitter.
With MICROPY_EMIT_X64 and MICROPY_EMIT_THUMB disabled, the respective
emitters and assemblers will not be included in the code.  This can
significantly reduce binary size for unix version.
2014-01-04 13:55:24 +00:00
John R. Lenton ff9a24f6f7 Merge remote-tracking branch 'upstream/master' into list_count 2014-01-04 12:52:07 +00:00
Damien George 0be78d44e5 Merge pull request #64 from pfalcon/str-slice-range-check
str slice: Trim slice indexes to be in range.
2014-01-04 04:28:57 -08:00
Damien George 597bb2f249 Merge pull request #60 from chipaca/list_copy
Implemented list.copy. Fixes issue #54.
2014-01-04 04:25:46 -08:00
John R. Lenton 6e1e98f864 Implements list.reverse; fixes issue #66 2014-01-04 02:10:29 +00:00
John R. Lenton 49fb6e53b3 Implements list.remove (in terms of list.index and list.pop).
Fixes issue #63.
2014-01-04 01:56:53 +00:00
Paul Sokolovsky 6ee1e383d6 str slice: Trim slice indexes to be in range. 2014-01-04 03:55:37 +02:00
John R. Lenton f1c6ad46af Merge remote-tracking branch 'upstream/master' into list_insert 2014-01-04 01:36:10 +00:00
John R. Lenton a58cf679ee Merge remote-tracking branch 'upstream/master' into list_count 2014-01-04 01:28:40 +00:00
John R. Lenton 45a8744617 Implements list.insert. Fixes issue #61. 2014-01-04 01:15:01 +00:00
Damien George c8d1384fc0 Fix int -> machine_int_t; add print to slice test. 2014-01-04 01:06:10 +00:00
Damien George b95d90b2f3 Merge pull request #59 from pfalcon/slice
Implement basic slice object and string slicing
2014-01-03 17:03:19 -08:00
Damien George 9ba9589ef7 Merge pull request #58 from chipaca/list_clear
Added list.clear. Fixes issue #53.
2014-01-03 16:54:30 -08:00
Paul Sokolovsky f8b9d3c41a str: Throw TypeError for invalid index type and clean up comments. 2014-01-04 02:35:49 +02:00
Paul Sokolovsky e606cb6561 slice: Allow building with MICROPY_ENABLE_SLICE=0. 2014-01-04 02:35:49 +02:00
Paul Sokolovsky decad08ef5 str: Handle non-positive slice indexes. 2014-01-04 02:35:48 +02:00
Paul Sokolovsky 59800afae9 slice: Implement special handling of omitted start/stop indexes. 2014-01-04 02:35:48 +02:00
Paul Sokolovsky cd22627f78 Enable slice support in config. 2014-01-04 02:35:48 +02:00
Paul Sokolovsky 31ba60f836 str: Initial implementation of string slicing.
Only step=1 and non-negative indexes are supported so far.
2014-01-04 02:35:48 +02:00
Paul Sokolovsky ded0a1efa5 Implement BUILD_SLICE opcode (2-arg version). 2014-01-04 02:35:48 +02:00
Paul Sokolovsky 1c6de11f77 Add basic implementation of slice object.
So far, only start and stop integer indexes are supported. Step is
not supported, as well as objects of arbitrary types.
2014-01-04 02:35:48 +02:00
John R. Lenton 5d4a821339 Implements list.index. Fixes issue #57. 2014-01-04 00:26:30 +00:00
Damien George 98adccf7ac Merge pull request #52 from chipaca/master
Tweaks to list.pop.
2014-01-03 16:22:19 -08:00
John R. Lenton e241e8c169 Implemented list.count 2014-01-03 23:57:28 +00:00
Paul Sokolovsky c90c0f68a2 Move INT_FMT, etc. declaration into global mpconfig.h .
This in particular makes it available for stm port.
2014-01-04 01:57:00 +02:00