mp_obj_new_bytearray_by_ref(): Allow to create array by reference.
This is special feature for FFI.
This commit is contained in:
parent
1801421f6d
commit
7f11c794a5
1
py/obj.h
1
py/obj.h
@ -349,6 +349,7 @@ extern const mp_obj_type_t zip_type;
|
||||
// array
|
||||
extern const mp_obj_type_t array_type;
|
||||
uint mp_obj_array_len(mp_obj_t self_in);
|
||||
mp_obj_t mp_obj_new_bytearray_by_ref(uint n, void *items);
|
||||
|
||||
// functions
|
||||
typedef struct _mp_obj_fun_native_t { // need this so we can define const objects (to go in ROM)
|
||||
|
@ -271,6 +271,17 @@ mp_obj_t mp_obj_new_bytearray(uint n, void *items) {
|
||||
return o;
|
||||
}
|
||||
|
||||
// Create bytearray which references specified memory area
|
||||
mp_obj_t mp_obj_new_bytearray_by_ref(uint n, void *items) {
|
||||
mp_obj_array_t *o = m_new_obj(mp_obj_array_t);
|
||||
o->base.type = &array_type;
|
||||
o->typecode = BYTEARRAY_TYPECODE;
|
||||
o->free = 0;
|
||||
o->len = n;
|
||||
o->items = items;
|
||||
return o;
|
||||
}
|
||||
|
||||
/******************************************************************************/
|
||||
/* array iterator */
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user