summaryrefslogtreecommitdiffstatshomepage
path: root/py
Commit message (Collapse)AuthorAge
* stmhal: Enable cmath module.Damien George2014-05-03
|
* py, objtype.c: Rename class_ to instance_ following change of typedef.Damien George2014-05-03
| | | | This follows up 0a7e01ae3c529fddf79dc5c71bf7e43cff3f9fa0.
* Merge pull request #546 from stinos/relax-makeqstrdataDamien George2014-05-03
|\ | | | | More relaxed parsing of preprocessed qstr header
| * More relaxed parsing of preprocessed qstr headerstijn2014-05-03
| | | | | | | | | | | | | | | | | | The original parsing would error out on any C declarations that are not typedefs or extern variables. This limits what can go in mpconfig.h and mpconfigport.h, as they are included in qstr.h. For instance even a function declaration would be rejected and including system headers is a complete no-go. That seems too limiting for a global config header, so makeqstrdata now ignores everything that does not match a qstr definition.
* | Merge pull request #552 from stinos/mingw-allocaPaul Sokolovsky2014-05-03
|\ \ | | | | | | py: Use <alloca.h> for alloca()
| * | py: Use <alloca.h> for alloca()stijn2014-05-03
| |/ | | | | | | | | | | | | | | alloca() is declared in alloca.h which als happens to be included by stdlib.h. On mingw however it resides in malloc.h only. So if we include alloca.h directly, and add an alloca.h for mingw in it's port directory we can get rid of the mingw-specific define to include malloc.h and the other ports are happy as well.
* / objclosure, objcell: Print detailed representation if was requested.Paul Sokolovsky2014-05-03
|/ | | | | Well, it is bound to "detailed error reporting", but that's closest what we have now without creating new entities.
* py, unix: Make "mpconfig.h" be first included, as other headers depend on it.Paul Sokolovsky2014-05-02
| | | | Specifically, nlr.h does.
* objtype: Work around stupid strict aliasing check.Paul Sokolovsky2014-05-02
|
* objexcept: Support tracebacks for user Exception subclasses.Paul Sokolovsky2014-05-02
|
* objtype: Rename mp_obj_class_t -> mp_obj_instance_t and move to local header.Paul Sokolovsky2014-05-02
| | | | TODO: Rename methods.
* objtype: .print() Exception instances in adhoc way.Paul Sokolovsky2014-05-02
| | | | This is ugly, just as expected.
* Merge pull request #544 from lurch/fix-minmaxPaul Sokolovsky2014-05-01
|\ | | | | Fix the builtin min() and max() functions (and add tests).
| * Fix the builtin min() and max() functions (and add tests).Andrew Scheller2014-05-01
| | | | | | | | Fixes #539
* | objfun: More debug logging.Paul Sokolovsky2014-05-01
| |
* | objgenerator: Fix check for too few args passed to gen function.Paul Sokolovsky2014-05-01
| |
* | objgenerator: .print(): Output real underlying function name.Paul Sokolovsky2014-05-01
|/
* py: Add tentative scheme for error messages configuration.Paul Sokolovsky2014-05-01
|
* objfun: Add function name accessor and .print slot method.Paul Sokolovsky2014-05-01
|
* Merge pull request #528 from pfalcon/native-subclass1Damien George2014-04-30
|\ | | | | Initial support for subclassing native types
| * objtype: Support calling normal methods inherited from native base class.Paul Sokolovsky2014-04-30
| | | | | | | | | | | | | | | | Biggest part of this support is refactoring mp_obj_class_lookup() to return standard "bound member" pair (mp_obj_t[2]). Actual support of inherited native methods is 3 lines then. Some inherited features may be not supported yet (e.g. native class methods, native properties, etc., etc.). There may be opportunities for further optimization too.
| * objtype: Add support for looking up non-method attrs in native base class.Paul Sokolovsky2014-04-29
| |
| * objtype: Implement basic framework for subclassing native types.Paul Sokolovsky2014-04-29
| | | | | | | | | | | | This implements checking of base types, allocation and basic initialization, and optimized support for special method lookups. Other features are not yet supported.
* | objfun: Factor out function to report positional args mismatch.Paul Sokolovsky2014-04-30
| |
* | py: Abstract no-return attribute for functions a bit.Paul Sokolovsky2014-04-30
| |
* | py: If setjmp NLR implementation is forced, omit native versions.Paul Sokolovsky2014-04-30
| |
* | nlr.h: As we treat all warnings as errors, can't use #warning.Paul Sokolovsky2014-04-30
|/ | | | And this is not good.
* py: Fix bug in map lookup of interned string vs non-interned.Damien George2014-04-28
| | | | | | | Had choice of either interning or forcing full equality comparison, and chose latter. See comments in mp_map_lookup. Addresses issue #523.
* py: Fix lexerunix, where not all data may be read from a file.Damien George2014-04-28
| | | | Addresses issue #526.
* py: Remove silly comment about interning keywords.Damien George2014-04-28
| | | | | | | | | | Of course, keywords are turned into lexer tokens in the lexer, so will never need to be interned (unless you do something like x="def"). As it is now, the following on pyboard makes no new qstrs: import pyb pyb.info()
* py: Clear allocated, but unused memory in containers.Paul Sokolovsky2014-04-28
| | | | | | Also, clear up freed slots in containers. As a follow up to 32bef315be8e56ad2d7f69223fe7b9606893b6ab.
* objlist: We no longer need to assert on mem alloc results.Paul Sokolovsky2014-04-28
| | | | They either succeed or raise exception.
* objlist: Use static small int constructor.Paul Sokolovsky2014-04-28
|
* py: Add '*' qstr for 'import *'; use blank qstr for comprehension arg.Damien George2014-04-27
|
* py: Remove unnecessary LOAD_CONST_ID bytecode.Damien George2014-04-27
| | | | It's the same as LOAD_CONST_STR.
* py: Eliminate 'op' variable in VM dispatch loop.Damien George2014-04-27
| | | | | Remembering the last op is rarely needed, and when it is, can simply use *save_ip.
* py: Save some ROM by shortening compiler error messages.Damien George2014-04-27
| | | | Messages are still explanatory, while taking a little less ROM.
* py: Change the way function arguments are compiled.Damien George2014-04-27
| | | | | | | | New way uses slightly less ROM and RAM, should be slightly faster, and, most importantly, allows to catch the error "non-keyword arg following keyword arg". Addresses issue #466.
* py: Implement keyword-only args.Damien George2014-04-27
| | | | | | | Implements 'def f(*, a)' and 'def f(*a, b)', but not default keyword-only args, eg 'def f(*, a=1)'. Partially addresses issue #524.
* Merge branch 'master' of github.com:micropython/micropythonDamien George2014-04-26
|\
| * py: "read" & "write" are so common that make them core.Paul Sokolovsky2014-04-26
| | | | | | | | Few other strings move to core, but make depend on "io" module.
| * objstringio: Compile only if MICROPY_ENABLE_MOD_IO defined.Paul Sokolovsky2014-04-26
| |
| * modio: Implement io.StringIO class.Paul Sokolovsky2014-04-26
| |
* | py, gc: Only zero out the extra bytes at the end of the heap chunk.Damien George2014-04-26
|/ | | | | This is a small optimisation to zero out only the additional bytes that the caller did not ask for.
* Simplify names for argcheck.c / arg parsing.Damien George2014-04-26
|
* Add ARRAY_SIZE macro, and use it where possible.Damien George2014-04-26
|
* Merge branch 'master' of github.com:micropython/micropythonDamien George2014-04-26
|\
| * objstr: Optimize .rstrip() by scanning string from end.Paul Sokolovsky2014-04-26
| |
| * objstr: Implement .lstrip() & .rstrip().Paul Sokolovsky2014-04-26
| | | | | | | | Share code with .strip(). TODO: optimize .rstrip().
| * streams: Make .write() support arbitrary objects with buffer interface.Paul Sokolovsky2014-04-26
| | | | | | | | This in particular fixes writing str vs bytes.