summaryrefslogtreecommitdiffstatshomepage
path: root/py/sequence.c
Commit message (Collapse)AuthorAge
* py: Wrap all obj-ptr conversions in MP_OBJ_TO_PTR/MP_OBJ_FROM_PTR.Damien George2015-11-29
| | | | | | | | | This allows the mp_obj_t type to be configured to something other than a pointer-sized primitive type. This patch also includes additional changes to allow the code to compile when sizeof(mp_uint_t) != sizeof(void*), such as using size_t instead of mp_uint_t, and various casts.
* py, unix: Allow to compile with -Wunused-parameter.Damien George2015-01-20
| | | | See issue #699.
* py, unix: Allow to compile with -Wsign-compare.Damien George2015-01-16
| | | | See issue #699.
* py: Move to guarded includes, everywhere in py/ core.Damien George2015-01-01
| | | | Addresses issue #1022.
* py: Convert [u]int to mp_[u]int_t where appropriate.Damien George2014-10-03
| | | | Addressing issue #50.
* py: Remove use of int type in obj.h.Damien George2014-08-30
| | | | Part of code cleanup, working towards resolving issue #50.
* py: Change all uint to mp_uint_t in obj.h.Damien George2014-08-30
| | | | Part of code cleanup, working towards resolving issue #50.
* Rename machine_(u)int_t to mp_(u)int_t.Damien George2014-07-03
| | | | See discussion in issue #50.
* Remove unnecessary bounds check from mp_seq_get_fast_slice_indexes.Chris Angelico2014-06-10
| | | | | At this point, start will be >= 0, so checking if stop < 0 is redundant with checking if start > stop a few lines later.
* py: Fix configurability of builtin slice.Damien George2014-06-01
|
* objlist: Implement support for arbitrary (3-arg) slices.Paul Sokolovsky2014-05-25
|
* py: Refactor slice helpers, preparing to support arbitrary slicing.Paul Sokolovsky2014-05-25
|
* sequence: Throw exception for not implemented slice steps.Paul Sokolovsky2014-05-25
|
* py: Handle case of slice start > stop in common sequence function.Paul Sokolovsky2014-05-25
|
* objslice: Support arbitrary objects start, stop, and step.Paul Sokolovsky2014-05-25
| | | | | Older int-only encoding is not expressive enough to support arbitrary slice assignment operations.
* sequence: Fix yet another case of improper sequence comparison.Paul Sokolovsky2014-05-15
| | | | This time, in mp_seq_cmp_bytes(). How many more cases are still lurking?
* py, unix: Add copyright for modules I worked closely on.Paul Sokolovsky2014-05-13
|
* py: Fix prefix on few sequence helpers, was incorrectly "mp_".Paul Sokolovsky2014-05-10
|
* bytes: Implement comparison and other binary operations.Paul Sokolovsky2014-05-10
| | | | Should support everything supported by strings.
* Add license header to (almost) all files.Damien George2014-05-03
| | | | | | | Blanket wide to all .c and .h files. Some files originating from ST are difficult to deal with (license wise) so it was left out of those. Also merged modpyb.h, modos.h, modstm.h and modtime.h in stmhal/.
* py, unix: Make "mpconfig.h" be first included, as other headers depend on it.Paul Sokolovsky2014-05-02
| | | | Specifically, nlr.h does.
* sequence: Further simplify sequence comparison.Paul Sokolovsky2014-04-18
|
* sequence: Fix glaring bug in sequence comparison.Paul Sokolovsky2014-04-18
|
* py: Change nlr_jump to nlr_raise, to aid in debugging.Damien George2014-04-05
| | | | | | This does not affect code size or performance when debugging turned off. To address issue #420.
* Merge map.h into obj.h.Damien George2014-03-30
| | | | | | Pretty much everyone needs to include map.h, since it's such an integral part of the Micro Python object implementation. Thus, the definitions are now in obj.h instead. map.h is removed.
* Rename rt_* to mp_*.Damien George2014-03-30
| | | | | | | Mostly just a global search and replace. Except rt_is_true which becomes mp_obj_is_true. Still would like to tidy up some of the names, but this will do for now.
* py: Clean up includes.xbe2014-03-17
| | | | Remove unnecessary includes. Add includes that improve portability.
* Implement str.count and add tests for it.xbe2014-03-12
| | | | | | | 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.
* Implement proper exception type hierarchy.Damien George2014-02-15
| | | | | | | | | | | | | | Each built-in exception is now a type, with base type BaseException. C exceptions are created by passing a pointer to the exception type to make an instance of. When raising an exception from the VM, an instance is created automatically if an exception type is raised (as opposed to an exception instance). Exception matching (RT_BINARY_OP_EXCEPTION_MATCH) is now proper. Handling of parse error changed to match new exceptions. mp_const_type renamed to mp_type_type for consistency.
* Fix some int casting that failed on 64 bit architecture.Damien George2014-02-10
|
* Factor out mp_seq_count_obj() and implement tuple.count().Paul Sokolovsky2014-02-10
|
* Implement tuple.index().Paul Sokolovsky2014-02-10
|
* Factor out mp_seq_index_obj() function to implement .index() on sequences.Paul Sokolovsky2014-02-10
|
* Refactor list comparison code to mp_seq_cmp_objs().Paul Sokolovsky2014-02-08
|
* Implement str/bytes rich comparisons.Paul Sokolovsky2014-02-02
|
* Factor out m_seq_get_fast_slice_indexes() fucntions as sequence helper.Paul Sokolovsky2014-02-02
| | | | | Takes slice object and sequence length and computes subsequence indexes for case of slice step=1.
* Merge branch 'master' of github.com:micropython/micropythonDamien George2014-01-21
| | | | | | | | | Conflicts: py/objstr.c py/py.mk py/stream.c unix/main.c unix/socket.c
* sequence.c: Start to refactor sequence operations for reuse among types.Paul Sokolovsky2014-01-21