38 #if MICROPY_PY_BUILTINS_FLOAT 43 extern struct _mp_dummy_t mp_sys_stdout_obj;
61 mp_locals_set(old_locals);
77 meta_args[0] =
args[1];
79 meta_args[2] = class_locals;
138 #if MICROPY_PY_BUILTINS_STR_UNICODE 144 }
else if (
c < 0x800) {
145 str[0] = (
c >> 6) | 0xC0;
146 str[1] = (
c & 0x3F) | 0x80;
148 }
else if (
c < 0x10000) {
149 str[0] = (
c >> 12) | 0xE0;
150 str[1] = ((
c >> 6) & 0x3F) | 0x80;
151 str[2] = (
c & 0x3F) | 0x80;
153 }
else if (
c < 0x110000) {
154 str[0] = (
c >> 18) | 0xF0;
155 str[1] = ((
c >> 12) & 0x3F) | 0x80;
156 str[2] = ((
c >> 6) & 0x3F) | 0x80;
157 str[3] = (
c & 0x3F) | 0x80;
165 if (0 <= ord && ord <= 0xff) {
182 dict = mp_locals_get();
206 for (
size_t i = 0; i < dict->
map.
alloc; i++) {
207 if (MP_MAP_SLOT_IS_FILLED(&dict->
map, i)) {
212 if (members !=
NULL) {
213 for (
size_t i = 0; i < members->
alloc; i++) {
214 if (MP_MAP_SLOT_IS_FILLED(members, i)) {
239 #if MICROPY_PY_BUILTINS_INPUT 242 #include "lib/mp-readline/readline.h" 245 #ifndef mp_hal_readline 246 #define mp_hal_readline readline 255 int ret = mp_hal_readline(&line,
"");
256 if (ret == CHAR_CTRL_C) {
259 if (line.
len == 0 && ret == CHAR_CTRL_D) {
273 #if MICROPY_PY_BUILTINS_MIN_MAX 295 if (default_elem !=
NULL) {
296 best_obj = default_elem->
value;
306 for (
size_t i = 0; i < n_args; i++) {
347 #if MICROPY_PY_BUILTINS_STR_UNICODE 366 "ord() expected a character, but string of length %d found", (
int)len));
375 #if !MICROPY_PY_BUILTINS_POW3 377 #elif MICROPY_LONGINT_IMPL != MICROPY_LONGINT_IMPL_MPZ 389 const char *sep_data =
" ";
391 const char *end_data =
"\n";
399 #if MICROPY_PY_IO && MICROPY_PY_SYS_STDFILES 400 void *stream_obj = &mp_sys_stdout_obj;
408 for (
size_t i = 0; i < n_args; i++) {
410 #if MICROPY_PY_IO && MICROPY_PY_SYS_STDFILES 416 #if MICROPY_PY_IO && MICROPY_PY_SYS_STDFILES 422 #if MICROPY_PY_IO && MICROPY_PY_SYS_STDFILES 435 #if MICROPY_CAN_OVERRIDE_BUILTINS 459 #if MICROPY_PY_BUILTINS_FLOAT 463 mp_float_t val = mp_obj_get_float(o_in);
464 mp_float_t mult = MICROPY_FLOAT_C_FUN(
pow)(10, num_dig);
466 mp_float_t rounded = MICROPY_FLOAT_C_FUN(
nearbyint)(val * mult) / mult;
467 return mp_obj_new_float(rounded);
469 mp_float_t val = mp_obj_get_float(o_in);
470 mp_float_t rounded = MICROPY_FLOAT_C_FUN(
nearbyint)(val);
471 return mp_obj_new_int_from_float(rounded);
483 default: value =
args[1];
break;
537 #if MICROPY_CPYTHON_COMPAT 583 #if MICROPY_PY_BUILTINS_BYTEARRAY 586 #if MICROPY_PY_BUILTINS_COMPLEX 590 #if MICROPY_PY_BUILTINS_ENUMERATE 593 #if MICROPY_PY_BUILTINS_FILTER 596 #if MICROPY_PY_BUILTINS_FLOAT 599 #if MICROPY_PY_BUILTINS_SET && MICROPY_PY_BUILTINS_FROZENSET 605 #if MICROPY_PY_BUILTINS_MEMORYVIEW 609 #if MICROPY_PY_BUILTINS_PROPERTY 613 #if MICROPY_PY_BUILTINS_REVERSED 616 #if MICROPY_PY_BUILTINS_SET 619 #if MICROPY_PY_BUILTINS_SLICE 633 #if MICROPY_PY_BUILTINS_NOTIMPLEMENTED 643 #if MICROPY_PY_BUILTINS_COMPILE 647 #if MICROPY_CPYTHON_COMPAT 652 #if MICROPY_PY_BUILTINS_EVAL_EXEC 656 #if MICROPY_PY_BUILTINS_EXECFILE 664 #if MICROPY_PY_BUILTINS_HELP 669 #if MICROPY_PY_BUILTINS_INPUT 677 #if MICROPY_PY_BUILTINS_MIN_MAX 711 #if MICROPY_PY_ASYNC_AWAIT 718 #if MICROPY_PY_BUILTINS_STR_UNICODE 722 #if MICROPY_EMIT_NATIVE const mp_print_t mp_plat_print
STATIC const mp_rom_map_elem_t mp_module_builtins_globals_table[]
MP_DEFINE_CONST_FUN_OBJ_VAR_BETWEEN(mp_builtin_dir_obj, 0, 1, mp_builtin_dir)
qstr mp_obj_str_get_qstr(mp_obj_t self_in)
const mp_obj_type_t mp_type_reversed
const mp_obj_dict_t mp_module_builtins_globals
mp_obj_t mp_unary_op(mp_unary_op_t op, mp_obj_t arg)
const mp_obj_type_t mp_type_set
const mp_obj_type_t mp_type_KeyboardInterrupt
NORETURN void mp_raise_msg(const mp_obj_type_t *exc_type, const char *msg)
STATIC mp_obj_t mp_builtin___repl_print__(mp_obj_t o)
const mp_obj_type_t mp_type_EOFError
mp_obj_t mp_obj_new_tuple(size_t n, const mp_obj_t *items)
const mp_obj_type_t mp_type_SystemExit
const mp_obj_type_t mp_type_AssertionError
void mp_load_method_maybe(mp_obj_t obj, qstr attr, mp_obj_t *dest)
const mp_obj_type_t mp_type_float
#define MICROPY_ERROR_REPORTING_TERSE
const mp_obj_type_t mp_type_bytearray
MP_DEFINE_CONST_FUN_OBJ_2(mp_builtin_divmod_obj, mp_builtin_divmod)
const mp_obj_type_t mp_type_ZeroDivisionError
const mp_obj_type_t mp_type_memoryview
mp_make_new_fun_t make_new
const mp_obj_type_t mp_type_TypeError
STATIC mp_obj_t mp_builtin_any(mp_obj_t o_in)
#define MP_OBJ_IS_TYPE(o, t)
STATIC const uint8_t attr[]
STATIC mp_obj_t mp_builtin_chr(mp_obj_t o_in)
mp_obj_t mp_obj_new_exception_msg_varg(const mp_obj_type_t *exc_type, const char *fmt,...)
mp_obj_t mp_obj_new_exception(const mp_obj_type_t *exc_type)
STATIC mp_obj_t mp_builtin_dir(size_t n_args, const mp_obj_t *args)
STATIC mp_obj_t mp_builtin_print(size_t n_args, const mp_obj_t *args, mp_map_t *kwargs)
MP_DEFINE_CONST_FUN_OBJ_KW(mp_builtin_print_obj, 0, mp_builtin_print)
const mp_obj_type_t mp_type_StopIteration
STATIC mp_obj_t mp_builtin_oct(mp_obj_t o_in)
void mp_obj_print(mp_obj_t o_in, mp_print_kind_t kind)
mp_obj_type_t * mp_obj_get_type(mp_const_obj_t o_in)
const mp_obj_type_t mp_type_filter
int mp_print_str(const mp_print_t *print, const char *str)
void vstr_init(vstr_t *vstr, size_t alloc)
const mp_obj_type_t mp_type_NotImplementedError
STATIC mp_obj_t mp_builtin_divmod(mp_obj_t o1_in, mp_obj_t o2_in)
#define MP_OBJ_FROM_PTR(p)
const mp_obj_type_t mp_type_Exception
#define MP_OBJ_NEW_QSTR(qst)
const mp_obj_type_t mp_type_ViperTypeError
const mp_obj_type_t mp_type_super
STATIC mp_obj_t mp_builtin_hasattr(mp_obj_t object_in, mp_obj_t attr_in)
const mp_obj_type_t mp_type_ImportError
const mp_obj_type_t mp_type_bytes
mp_obj_t mp_obj_new_list(size_t n, mp_obj_t *items)
const mp_obj_type_t mp_type_LookupError
mp_int_t mp_obj_get_int(mp_const_obj_t arg)
mp_obj_dict_t * mp_obj_module_get_globals(mp_obj_t self_in)
STATIC mp_obj_t mp_builtin_hash(mp_obj_t o_in)
mp_obj_t mp_call_function_0(mp_obj_t fun)
mp_obj_t mp_obj_new_dict(size_t n_args)
STATIC mp_obj_t mp_builtin_bin(mp_obj_t o_in)
const mp_obj_type_t mp_type_NameError
STATIC mp_obj_t mp_builtin_repr(mp_obj_t o_in)
MP_DEFINE_CONST_DICT(mp_module_builtins_globals, mp_module_builtins_globals_table)
const mp_obj_type_t mp_type_SyntaxError
void mp_load_method(mp_obj_t base, qstr attr, mp_obj_t *dest)
mp_map_elem_t * mp_map_lookup(mp_map_t *map, mp_obj_t index, mp_map_lookup_kind_t lookup_kind)
mp_obj_t mp_obj_list_append(mp_obj_t self_in, mp_obj_t arg)
const mp_obj_type_t mp_type_complex
STATIC mp_obj_t mp_builtin_round(size_t n_args, const mp_obj_t *args)
const mp_obj_type_t mp_type_StopAsyncIteration
#define MP_OBJ_NEW_SMALL_INT(small_int)
#define MICROPY_ERROR_REPORTING
const mp_obj_type_t mp_type_staticmethod
mp_obj_t mp_call_function_1(mp_obj_t fun, mp_obj_t arg)
STATIC mp_obj_t mp_builtin_sorted(size_t n_args, const mp_obj_t *args, mp_map_t *kwargs)
mp_obj_t mp_obj_id(mp_obj_t o_in)
#define MICROPY_PORT_BUILTINS
const char * mp_obj_str_get_data(mp_obj_t self_in, size_t *len)
const mp_obj_type_t mp_type_OSError
#define MP_PYTHON_PRINTER
STATIC mp_obj_t mp_builtin_iter(mp_obj_t o_in)
const mp_obj_type_t mp_type_frozenset
STATIC mp_obj_t mp_builtin_ord(mp_obj_t o_in)
const mp_obj_type_t mp_type_range
void mp_obj_print_helper(const mp_print_t *print, mp_obj_t o_in, mp_print_kind_t kind)
const mp_obj_type_t mp_type_str
mp_obj_t mp_binary_op(mp_binary_op_t op, mp_obj_t lhs, mp_obj_t rhs)
STATIC mp_obj_t mp_builtin_abs(mp_obj_t o_in)
bool mp_obj_is_callable(mp_obj_t o_in)
const mp_obj_type_t mp_type_ValueError
mp_obj_t mp_obj_new_str(const char *data, size_t len, bool make_qstr_if_not_already)
const mp_obj_type_t mp_type_MemoryError
STATIC mp_obj_t mp_builtin_callable(mp_obj_t o_in)
const struct _mp_obj_singleton_t mp_const_notimplemented_obj
const mp_obj_type_t mp_type_GeneratorExit
mp_obj_t mp_iternext_allow_raise(mp_obj_t o_in)
STATIC mp_obj_t mp_builtin_pow(size_t n_args, const mp_obj_t *args)
const mp_obj_type_t mp_type_object
mp_obj_t mp_obj_new_int(mp_int_t value)
STATIC mp_obj_t mp_builtin_setattr(mp_obj_t base, mp_obj_t attr, mp_obj_t value)
const mp_obj_module_t mp_module_builtins
MP_DEFINE_CONST_FUN_OBJ_3(mp_builtin_setattr_obj, mp_builtin_setattr)
mp_obj_t mp_obj_new_str_from_vstr(const mp_obj_type_t *type, vstr_t *vstr)
STATIC mp_obj_t mp_builtin_getattr(size_t n_args, const mp_obj_t *args)
STATIC mp_obj_t mp_builtin_next(mp_obj_t o)
const mp_obj_type_t mp_type_UnicodeError
void mp_stream_write_adaptor(void *self, const char *buf, size_t len)
const mp_obj_type_t mp_type_type
const mp_obj_type_t mp_type_AttributeError
const mp_obj_type_t mp_type_bool
MP_DEFINE_CONST_FUN_OBJ_0(mp_builtin_globals_obj, mp_builtin_globals)
const mp_obj_type_t mp_type_ArithmeticError
const mp_obj_type_t mp_type_IndexError
NORETURN void mp_raise_ValueError(const char *msg)
void mp_obj_cell_set(mp_obj_t self_in, mp_obj_t obj)
const struct _mp_obj_singleton_t mp_const_ellipsis_obj
unichar utf8_get_char(const byte *s)
const mp_obj_type_t mp_type_IndentationError
MP_DEFINE_CONST_FUN_OBJ_VAR(mp_builtin___build_class___obj, 2, mp_builtin___build_class__)
STATIC mp_obj_t mp_builtin_locals(void)
mp_obj_t mp_obj_new_bound_meth(mp_obj_t meth, mp_obj_t self)
const mp_obj_type_t mp_type_map
mp_obj_t mp_obj_list_sort(size_t n_args, const mp_obj_t *args, mp_map_t *kwargs)
const mp_obj_type_t mp_type_slice
const mp_obj_type_t mp_type_tuple
const mp_obj_type_t mp_type_dict
const mp_obj_type_t mp_type_module
mp_obj_t mp_getiter(mp_obj_t o_in, mp_obj_iter_buf_t *iter_buf)
void mp_store_attr(mp_obj_t base, qstr attr, mp_obj_t value)
STATIC mp_obj_t mp_builtin___build_class__(size_t n_args, const mp_obj_t *args)
int mp_print_strn(const mp_print_t *print, const char *str, size_t len, int flags, char fill, int width)
const mp_obj_type_t mp_type_classmethod
#define MP_OBJ_STOP_ITERATION
mp_obj_t mp_iternext(mp_obj_t o_in)
mp_obj_t mp_call_function_n_kw(mp_obj_t fun_in, size_t n_args, size_t n_kw, const mp_obj_t *args)
mp_obj_t mp_obj_len(mp_obj_t o_in)
const mp_obj_type_t mp_type_int
MP_DEFINE_CONST_FUN_OBJ_1(mp_builtin_abs_obj, mp_builtin_abs)
#define mp_obj_is_instance_type(type)
STATIC mp_obj_t mp_builtin_sum(size_t n_args, const mp_obj_t *args)
const mp_obj_type_t mp_type_property
STATIC mp_obj_t mp_builtin_all(mp_obj_t o_in)
NORETURN void mp_raise_TypeError(const char *msg)
mp_uint_t unichar_charlen(const char *str, mp_uint_t len)
double nearbyint(double x)
const mp_obj_type_t mp_type_list
const mp_obj_type_t mp_type_zip
void vstr_init_print(vstr_t *vstr, size_t alloc, struct _mp_print_t *print)
bool mp_obj_is_true(mp_obj_t arg)
const mp_obj_type_t mp_type_KeyError
STATIC mp_obj_t mp_builtin_hex(mp_obj_t o_in)
const mp_obj_type_t mp_type_BaseException
mp_obj_t mp_obj_str_format(size_t n_args, const mp_obj_t *args, mp_map_t *kwargs)
const mp_obj_type_t mp_type_OverflowError
mp_obj_t mp_obj_int_pow3(mp_obj_t base, mp_obj_t exponent, mp_obj_t modulus)
struct _mp_obj_dict_t * locals_dict
const mp_obj_type_t mp_type_RuntimeError
STATIC mp_obj_t mp_builtin_globals(void)
const mp_obj_type_t mp_type_enumerate
mp_obj_t mp_builtin_input(size_t n_args, const mp_obj_t *args)