Commit Graph

921 Commits

Author SHA1 Message Date
Paul Sokolovsky
809eaa2679 Add FFI module example. 2014-01-29 00:37:09 +02:00
Paul Sokolovsky
60a9fac8d4 unix: Initial implementation of FFI module.
Foreign Function Interface module allows to load native dynamic libraries,
call functions and access variables in them. This makes possible to write
interface modules in pure Python.

This module provides thin wrapper around libffi. ctypes compatibility might
be possible to implement on top of this module (though ctypes allow to call
functions without prototypes, which is not supported by libffi (i.e.
implementation would be inefficient))).
2014-01-29 00:24:00 +02:00
Paul Sokolovsky
7f11c794a5 mp_obj_new_bytearray_by_ref(): Allow to create array by reference.
This is special feature for FFI.
2014-01-29 00:21:41 +02:00
Markus Siemens
242856cfbf Fixed problems with nlx86.S on Linux
Fixed '#ifdef's so Linux would compile again and added
.scl and .type for Windows.
2014-01-28 19:52:04 +01:00
Markus Siemens
19ccc6bdc7 Added Windows port (see #233) 2014-01-28 18:21:05 +01:00
Paul Sokolovsky
1801421f6d bytearray: Print objects properly. 2014-01-28 03:40:48 +02:00
Paul Sokolovsky
0b7e29c025 Factor out quoted string print function for reuse (mp_str_print_quoted()). 2014-01-28 03:40:06 +02:00
Paul Sokolovsky
8e991e0680 Add basic array.array test. 2014-01-28 03:19:32 +02:00
Paul Sokolovsky
7e652af242 array: CPython prints empty arrays inconsistently (only typecode, no []). 2014-01-28 03:19:13 +02:00
Paul Sokolovsky
0dd0467a97 Don't pre-import array module. 2014-01-28 03:18:30 +02:00
Paul Sokolovsky
11973b48b5 array.array: Allow to create empty arrays. 2014-01-28 03:18:30 +02:00
Damien George
42647e64db stm: Remove unneccesary include of mpconfigport (already in mpconfig). 2014-01-27 23:52:47 +00:00
Damien George
c674f02d5c Merge pull request #231 from iabdalkader/master
Fix implicit double conversion warning
2014-01-27 15:54:44 -08:00
Damien George
c7aa9fcae5 Merge branch 'master' of github.com:micropython/micropython 2014-01-27 23:16:20 +00:00
Damien George
4e8dc8c41b py: Add unary op not for NoneType, bool, tuple, list, dict; fix for int. 2014-01-27 23:15:32 +00:00
mux
8d3b0a9f74 Add LCD check to stdout_print_strn 2014-01-27 18:53:16 +02:00
Paul Sokolovsky
9b00dad7bb long int: Implement more operations. 2014-01-27 12:25:23 +02:00
mux
bd61a6cee8 Add missing LCD driver definitions for STM32F4DISC
* Add missing LCD definitions for STM32F4DISC target, current code
  breaks build.
2014-01-27 10:56:47 +02:00
mux
00a4da93e8 Fix implicit double conversion warning 2014-01-27 10:21:42 +02:00
Paul Sokolovsky
ddf1aa9223 list.pop(): Don't allow ->alloc drop to zero, which causes unexpected behavior. 2014-01-27 01:07:58 +02:00
Paul Sokolovsky
14d28be344 gen.send(): Throw StopIteration. Also, explicitly shutdown finished gen.
Otherwise, some generator statements still may be spuriously executed on
subsequent calls to next()/send().
2014-01-27 01:07:58 +02:00
Damien George
addf60b2e6 Merge pull request #228 from pfalcon/gen-send
Implement send() method for generators.
2014-01-26 11:25:38 -08:00
Paul Sokolovsky
bf38e2a03a Implement send() method for generators. 2014-01-26 20:56:08 +02:00
Damien George
56bb636014 Change -Og to -O0 in unix-cpy/Makefile; cast to small int in socket.c. 2014-01-26 17:52:23 +00:00
Damien George
554a75b689 Merge pull request #226 from pfalcon/make-debug
unix Makefile: -Og doesn't work (at least) with gcc 4.6 below.
2014-01-26 09:53:31 -08:00
Damien George
5bd56fbf13 Merge branch 'master' of github.com:micropython/micropython 2014-01-26 17:41:46 +00:00
Damien George
75abee206d stm: USB host mode working! Restructure stm library directories. 2014-01-26 17:41:01 +00:00
Paul Sokolovsky
4795c58f3c sock-server.py: Use SO_REUSEADDR to avoid errors on quick restart. 2014-01-26 02:03:07 +02:00
Paul Sokolovsky
a88c30c64a unix socket: Add setsockopt() method. 2014-01-26 02:03:07 +02:00
Paul Sokolovsky
9d95a2b21d Functions of fixed number of args are special-cased only for 3 or less args. 2014-01-26 02:03:07 +02:00
Paul Sokolovsky
2ca84aa01e Add MP_OBJ_IS_INT(), for symmetry with MP_OBJ_IS_STR(). 2014-01-26 02:03:07 +02:00
Paul Sokolovsky
5d362d3209 unix socket: Add few more socket constants. 2014-01-26 02:03:07 +02:00
Paul Sokolovsky
db0b282d45 unix socket: Store module constants in data structure.
-147 bytes on x86.
2014-01-26 02:03:07 +02:00
Paul Sokolovsky
e2febe90e3 unix Makefile: -Og doesn't work (at least) with gcc 4.6 below.
Also, don't try to force debug info format, use native.
2014-01-25 19:49:38 +02:00
Damien George
8fcf7b858d Merge pull request #225 from dhylands/fix-make-dep
Fixed dependency problem for qstrdefs.generated.h
2014-01-25 09:34:23 -08:00
Dave Hylands
1a3b0d5fed Fixed dependency problem for qstrdefs.generated.h
The problem manifests itself in make 4.0

I also fixed the LINK message when linking the final executable for unix and unix-cpy.
2014-01-25 08:55:31 -08:00
Damien George
51f3a6becd stm: Improved ADC module; add BOARD_NAME config value. 2014-01-25 16:30:47 +00:00
Damien George
b829b5caec Implement mp_parse_node_free; print properly repr(string). 2014-01-25 13:51:19 +00:00
Damien George
e0722ee9d9 Merge branch 'free-parse-tree' of github.com:pfalcon/micropython into pfalcon-free-parse-tree 2014-01-25 11:54:46 +00:00
Damien George
28eb57786d py: Optimise generated code for working out line numbers. 2014-01-25 11:43:20 +00:00
Damien George
449dd0a69e stm: Put gc_collect code in separate file; define _ram_start in .ld.
To partly address Issue #220.
2014-01-25 00:44:31 +00:00
Damien George
2259e62c37 Remove obsoleted comment. 2014-01-25 00:25:32 +00:00
Damien George
0f5e8b151f Merge branch 'master' of github.com:micropython/micropython 2014-01-25 00:18:30 +00:00
Damien George
7c9c667633 py: Implement iterator support for object that has __getitem__.
Addresses Issue #203.
2014-01-25 00:17:36 +00:00
Paul Sokolovsky
aee2ba70de Add parse_node_free_struct() and use it to free parse tree after compilation.
TODO: Check lexer/parse/compile error path for leaks too.
2014-01-25 02:11:59 +02:00
Paul Sokolovsky
c1d200ef74 rt_deinit(): Finalize some maps. 2014-01-25 02:04:07 +02:00
Paul Sokolovsky
9a24a0465f Add mp_map_deinit() & mp_map_free() to finalize maps.
mp_map_deinit() finalizes static map, mp_map_free() - dynamic.
2014-01-25 02:04:01 +02:00
Damien George
fcd4ae8271 Merge pull request #221 from pfalcon/basic-bytes
Add basic implementation of bytes type, piggybacking on str.
2014-01-24 15:15:47 -08:00
Damien George
58b8a6202a Merge pull request #219 from dhylands/add-deps
Rework makefiles. Add proper dependency checking.
2014-01-24 15:03:39 -08:00
Damien George
0004a84ec0 Revert "Move gc_collect to py/gc.c"
This reverts commit a215b09c0d.
2014-01-24 22:54:09 +00:00