aboutsummaryrefslogtreecommitdiff
path: root/py/stream.c
AgeCommit message (Collapse)Author
2014-05-02py, unix: Make "mpconfig.h" be first included, as other headers depend on it.Paul Sokolovsky
Specifically, nlr.h does.
2014-04-26streams: Make .write() support arbitrary objects with buffer interface.Paul Sokolovsky
This in particular fixes writing str vs bytes.
2014-04-17py: Add MP_OBJ_STOP_ITERATION and make good use of it.Damien George
Also make consistent use of MP_OBJ_NOT_SUPPORTED and MP_OBJ_NULL. This helps a lot in debugging and understanding of function API.
2014-04-12py: the entire `<unistd.h>` shouldn't be neededIlya Dmitrichenko
2014-04-05py: Replace stream_p with *stream_p in mp_obj_type_t.Damien George
This is to reduce ROM usage. stream_p is used in file and socket types only (at the moment), so seems a good idea to make the protocol functions a pointer instead of the actual structure. It saves 308 bytes of ROM in the stmhal/ port, 928 in unix/.
2014-04-05py: Change nlr_jump to nlr_raise, to aid in debugging.Damien George
This does not affect code size or performance when debugging turned off. To address issue #420.
2014-03-26py: Replace mp_const_stop_iteration object with MP_OBJ_NULL.Damien George
2014-03-17py: Clean up includes.xbe
Remove unnecessary includes. Add includes that improve portability.
2014-02-15Implement proper exception type hierarchy.Damien George
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.
2014-02-12Replace global "static" -> "STATIC", to allow "analysis builds". Part 2.Paul Sokolovsky
2014-02-08Make mp_obj_str_get_data return char* instead of byte*.Damien George
Can't decide which is better for string type, char or byte pointer. Changing to char removes a few casts. Really need to do proper unicode.
2014-01-22file.readline(): Use mp_obj_str_get_data() and fix off-by-one error on EOF.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-20stream_read(): Shrink memory block to actual read size.Paul Sokolovsky
2014-01-20stream: Add generic unbuffered iternext method.Paul Sokolovsky
Uses stream_unbuffered_readline underline.
2014-01-19Change int to uint for n_args in function with variable arguments.Damien George
2014-01-16Make file.read() and file.read(-1) call out to file.readall().Paul Sokolovsky
Per Python3 io module semantics.
2014-01-16Do not assume that vstr buf is the same after it was extended.Paul Sokolovsky
2014-01-15Add unbuffered readline() implementation for Raw I/O files.Paul Sokolovsky
2014-01-13Add generic impl of stream .readall() method. Use one for unix io.FileIO.Paul Sokolovsky
2014-01-08py: add variable argument exception constructor function.Damien George
Addresses issue #104.
2014-01-08Add generic implementations of Python read()/write methods for streams.Paul Sokolovsky
These can be used for any object which implements stream protocol (mp_stream_p_t).