summaryrefslogtreecommitdiff
path: root/py/objstr.c
AgeCommit message (Collapse)Author
2014-01-31py: Make str.replace do 2 passes over the string.Damien George
2014-01-30Implement str.replace and add tests for it.xbe
2014-01-28Factor out quoted string print function for reuse (mp_str_print_quoted()).Paul Sokolovsky
2014-01-25Implement mp_parse_node_free; print properly repr(string).Damien George
2014-01-25py: Implement iterator support for object that has __getitem__.Damien George
Addresses Issue #203.
2014-01-24Add basic implementation of bytes type, piggybacking on str.Paul Sokolovsky
This reuses as much str implementation as possible, from this we can make them more separate as needed.
2014-01-23py: Implement bool unary op; tidy up unary op dispatch.Damien George
2014-01-23Implement simplest case of str.startswith().Paul Sokolovsky
2014-01-22Second stage of qstr revamp: uPy str object can be qstr or not.Damien George
2014-01-21Merge branch 'master' of github.com:micropython/micropythonDamien George
Conflicts: py/objstr.c py/py.mk py/stream.c unix/main.c unix/socket.c
2014-01-21Revamp qstrs: they now include length and hash.Damien George
Can now have null bytes in strings. Can define ROM qstrs per port using qstrdefsport.h
2014-01-21Implement str.split(None).Paul Sokolovsky
Note that splitting by explicit string is not implemented so far.
2014-01-21str: Implement proper string (instead of byte string) indexing.Paul Sokolovsky
Also, support negative indexes.
2014-01-21Implement string multiplication.Paul Sokolovsky
2014-01-20objstr: More support for MP_OBJ_QSTR.Paul Sokolovsky
2014-01-20Properly print MP_OBJ_QSTR objects.Paul Sokolovsky
2014-01-19Change int to uint for n_args in function with variable arguments.Damien George
2014-01-16str.format: Don't assume that '}' immediately follows '{', skip insides.Paul Sokolovsky
That at least makes stuff like "{:x}".format(1) to produce not completely broken output.
2014-01-15Merge branch 'str-repr' of github.com:pfalcon/micropython into pfalcon-str-reprDamien George
Conflicts: tests/basics/tests/exception1.py
2014-01-15type->print(): Distinguish str() and repr() variety by passing extra param.Paul Sokolovsky
2014-01-13Merge remote-tracking branch 'upstream/master' into containmentJohn R. Lenton
2014-01-13Consolidate rt_make_function_[0123] to rt_make_function_n.Damien George
2014-01-13Merge pull request #168 from dhylands/add-strstrDamien George
Added public domain implementations of strchr and strstr.
2014-01-13Cleanup built-ins, and fix some compiler warnings/errors.Damien George
2014-01-12Added public domain implementations of strchr and strstr.Dave Hylands
2014-01-13Merge remote-tracking branch 'upstream/master' into containmentJohn R. Lenton
2014-01-12Implement a basic str.find; fixes #67John R. Lenton
2014-01-11Implemented support for `in` and `not in` operators.John R. Lenton
2014-01-09Use memcpy instead of strncpy; add usart.status to stm.Damien George
2014-01-08Implement str.stripxbe
2014-01-07Merge branch 'cplusplus' of https://github.com/ian-v/micropython into ↵Damien George
ian-v-cplusplus Conflicts: py/objcomplex.c
2014-01-06Make list and str method tables statician-v
2014-01-06Co-exist with C++ (issue #85)ian-v
2014-01-05Convert many object types structs to use C99 tagged initializer syntax.Paul Sokolovsky
2014-01-05Implements str iteratorxyb
2014-01-04Convert Python types to proper Python type hierarchy.Damien George
Now much more inline with how CPython does types.
2014-01-04Split qstr into pools, and put initial pool in ROM.Damien George
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-04str slice: Trim slice indexes to be in range.Paul Sokolovsky
2014-01-04Fix int -> machine_int_t; add print to slice test.Damien George
2014-01-04str: Throw TypeError for invalid index type and clean up comments.Paul Sokolovsky
2014-01-04slice: Allow building with MICROPY_ENABLE_SLICE=0.Paul Sokolovsky
2014-01-04str: Handle non-positive slice indexes.Paul Sokolovsky
2014-01-04str: Initial implementation of string slicing.Paul Sokolovsky
Only step=1 and non-negative indexes are supported so far.
2014-01-02py: remove depedence on strcat and stpcpy.Damien George
This fixes Issue #29, and means the core is no longer dependent on string functions, except strlen.
2013-12-29Change memory allocation API to require size for free and realloc.Damien
2013-12-21Change object representation from 1 big union to individual structs.Damien
A big change. Micro Python objects are allocated as individual structs with the first element being a pointer to the type information (which is itself an object). This scheme follows CPython. Much more flexible, not necessarily slower, uses same heap memory, and can allocate objects statically. Also change name prefix, from py_ to mp_ (mp for Micro Python).