Numworks Epsilon  1.4.1
Graphing Calculator Operating System
runtime0.h File Reference

Go to the source code of this file.

Macros

#define MP_SCOPE_FLAG_VARARGS   (0x01)
 
#define MP_SCOPE_FLAG_VARKEYWORDS   (0x02)
 
#define MP_SCOPE_FLAG_GENERATOR   (0x04)
 
#define MP_SCOPE_FLAG_DEFKWARGS   (0x08)
 
#define MP_NATIVE_TYPE_OBJ   (0x00)
 
#define MP_NATIVE_TYPE_BOOL   (0x01)
 
#define MP_NATIVE_TYPE_INT   (0x02)
 
#define MP_NATIVE_TYPE_UINT   (0x03)
 
#define MP_NATIVE_TYPE_PTR   (0x04)
 
#define MP_NATIVE_TYPE_PTR8   (0x05)
 
#define MP_NATIVE_TYPE_PTR16   (0x06)
 
#define MP_NATIVE_TYPE_PTR32   (0x07)
 

Enumerations

enum  mp_unary_op_t {
  MP_UNARY_OP_POSITIVE, MP_UNARY_OP_NEGATIVE, MP_UNARY_OP_INVERT, MP_UNARY_OP_NOT,
  MP_UNARY_OP_NUM_BYTECODE, MP_UNARY_OP_BOOL = MP_UNARY_OP_NUM_BYTECODE, MP_UNARY_OP_LEN, MP_UNARY_OP_HASH,
  MP_UNARY_OP_ABS, MP_UNARY_OP_SIZEOF, MP_UNARY_OP_NUM_RUNTIME
}
 
enum  mp_binary_op_t {
  MP_BINARY_OP_LESS, MP_BINARY_OP_MORE, MP_BINARY_OP_EQUAL, MP_BINARY_OP_LESS_EQUAL,
  MP_BINARY_OP_MORE_EQUAL, MP_BINARY_OP_NOT_EQUAL, MP_BINARY_OP_IN, MP_BINARY_OP_IS,
  MP_BINARY_OP_EXCEPTION_MATCH, MP_BINARY_OP_INPLACE_OR, MP_BINARY_OP_INPLACE_XOR, MP_BINARY_OP_INPLACE_AND,
  MP_BINARY_OP_INPLACE_LSHIFT, MP_BINARY_OP_INPLACE_RSHIFT, MP_BINARY_OP_INPLACE_ADD, MP_BINARY_OP_INPLACE_SUBTRACT,
  MP_BINARY_OP_INPLACE_MULTIPLY, MP_BINARY_OP_INPLACE_FLOOR_DIVIDE, MP_BINARY_OP_INPLACE_TRUE_DIVIDE, MP_BINARY_OP_INPLACE_MODULO,
  MP_BINARY_OP_INPLACE_POWER, MP_BINARY_OP_OR, MP_BINARY_OP_XOR, MP_BINARY_OP_AND,
  MP_BINARY_OP_LSHIFT, MP_BINARY_OP_RSHIFT, MP_BINARY_OP_ADD, MP_BINARY_OP_SUBTRACT,
  MP_BINARY_OP_MULTIPLY, MP_BINARY_OP_FLOOR_DIVIDE, MP_BINARY_OP_TRUE_DIVIDE, MP_BINARY_OP_MODULO,
  MP_BINARY_OP_POWER, MP_BINARY_OP_NUM_BYTECODE, MP_BINARY_OP_DIVMOD = MP_BINARY_OP_NUM_BYTECODE, MP_BINARY_OP_NUM_RUNTIME,
  MP_BINARY_OP_NOT_IN, MP_BINARY_OP_IS_NOT
}
 
enum  mp_fun_kind_t {
  MP_F_CONVERT_OBJ_TO_NATIVE = 0, MP_F_CONVERT_NATIVE_TO_OBJ, MP_F_LOAD_NAME, MP_F_LOAD_GLOBAL,
  MP_F_LOAD_BUILD_CLASS, MP_F_LOAD_ATTR, MP_F_LOAD_METHOD, MP_F_LOAD_SUPER_METHOD,
  MP_F_STORE_NAME, MP_F_STORE_GLOBAL, MP_F_STORE_ATTR, MP_F_OBJ_SUBSCR,
  MP_F_OBJ_IS_TRUE, MP_F_UNARY_OP, MP_F_BINARY_OP, MP_F_BUILD_TUPLE,
  MP_F_BUILD_LIST, MP_F_LIST_APPEND, MP_F_BUILD_MAP, MP_F_STORE_MAP,
  MP_F_MAKE_FUNCTION_FROM_RAW_CODE, MP_F_NATIVE_CALL_FUNCTION_N_KW, MP_F_CALL_METHOD_N_KW, MP_F_CALL_METHOD_N_KW_VAR,
  MP_F_NATIVE_GETITER, MP_F_NATIVE_ITERNEXT, MP_F_NLR_PUSH, MP_F_NLR_POP,
  MP_F_NATIVE_RAISE, MP_F_IMPORT_NAME, MP_F_IMPORT_FROM, MP_F_IMPORT_ALL,
  MP_F_UNPACK_SEQUENCE, MP_F_UNPACK_EX, MP_F_DELETE_NAME, MP_F_DELETE_GLOBAL,
  MP_F_NEW_CELL, MP_F_MAKE_CLOSURE_FROM_RAW_CODE, MP_F_SETUP_CODE_STATE, MP_F_SMALL_INT_FLOOR_DIVIDE,
  MP_F_SMALL_INT_MODULO, MP_F_NUMBER_OF
}
 

Variables

void *const mp_fun_table [MP_F_NUMBER_OF]
 

Macro Definition Documentation

◆ MP_NATIVE_TYPE_BOOL

#define MP_NATIVE_TYPE_BOOL   (0x01)

Definition at line 37 of file runtime0.h.

◆ MP_NATIVE_TYPE_INT

#define MP_NATIVE_TYPE_INT   (0x02)

Definition at line 38 of file runtime0.h.

◆ MP_NATIVE_TYPE_OBJ

#define MP_NATIVE_TYPE_OBJ   (0x00)

Definition at line 36 of file runtime0.h.

◆ MP_NATIVE_TYPE_PTR

#define MP_NATIVE_TYPE_PTR   (0x04)

Definition at line 40 of file runtime0.h.

◆ MP_NATIVE_TYPE_PTR16

#define MP_NATIVE_TYPE_PTR16   (0x06)

Definition at line 42 of file runtime0.h.

◆ MP_NATIVE_TYPE_PTR32

#define MP_NATIVE_TYPE_PTR32   (0x07)

Definition at line 43 of file runtime0.h.

◆ MP_NATIVE_TYPE_PTR8

#define MP_NATIVE_TYPE_PTR8   (0x05)

Definition at line 41 of file runtime0.h.

◆ MP_NATIVE_TYPE_UINT

#define MP_NATIVE_TYPE_UINT   (0x03)

Definition at line 39 of file runtime0.h.

◆ MP_SCOPE_FLAG_DEFKWARGS

#define MP_SCOPE_FLAG_DEFKWARGS   (0x08)

Definition at line 33 of file runtime0.h.

◆ MP_SCOPE_FLAG_GENERATOR

#define MP_SCOPE_FLAG_GENERATOR   (0x04)

Definition at line 32 of file runtime0.h.

◆ MP_SCOPE_FLAG_VARARGS

#define MP_SCOPE_FLAG_VARARGS   (0x01)

Definition at line 30 of file runtime0.h.

◆ MP_SCOPE_FLAG_VARKEYWORDS

#define MP_SCOPE_FLAG_VARKEYWORDS   (0x02)

Definition at line 31 of file runtime0.h.

Enumeration Type Documentation

◆ mp_binary_op_t

Enumerator
MP_BINARY_OP_LESS 
MP_BINARY_OP_MORE 
MP_BINARY_OP_EQUAL 
MP_BINARY_OP_LESS_EQUAL 
MP_BINARY_OP_MORE_EQUAL 
MP_BINARY_OP_NOT_EQUAL 
MP_BINARY_OP_IN 
MP_BINARY_OP_IS 
MP_BINARY_OP_EXCEPTION_MATCH 
MP_BINARY_OP_INPLACE_OR 
MP_BINARY_OP_INPLACE_XOR 
MP_BINARY_OP_INPLACE_AND 
MP_BINARY_OP_INPLACE_LSHIFT 
MP_BINARY_OP_INPLACE_RSHIFT 
MP_BINARY_OP_INPLACE_ADD 
MP_BINARY_OP_INPLACE_SUBTRACT 
MP_BINARY_OP_INPLACE_MULTIPLY 
MP_BINARY_OP_INPLACE_FLOOR_DIVIDE 
MP_BINARY_OP_INPLACE_TRUE_DIVIDE 
MP_BINARY_OP_INPLACE_MODULO 
MP_BINARY_OP_INPLACE_POWER 
MP_BINARY_OP_OR 
MP_BINARY_OP_XOR 
MP_BINARY_OP_AND 
MP_BINARY_OP_LSHIFT 
MP_BINARY_OP_RSHIFT 
MP_BINARY_OP_ADD 
MP_BINARY_OP_SUBTRACT 
MP_BINARY_OP_MULTIPLY 
MP_BINARY_OP_FLOOR_DIVIDE 
MP_BINARY_OP_TRUE_DIVIDE 
MP_BINARY_OP_MODULO 
MP_BINARY_OP_POWER 
MP_BINARY_OP_NUM_BYTECODE 
MP_BINARY_OP_DIVMOD 
MP_BINARY_OP_NUM_RUNTIME 
MP_BINARY_OP_NOT_IN 
MP_BINARY_OP_IS_NOT 

Definition at line 67 of file runtime0.h.

◆ mp_fun_kind_t

Enumerator
MP_F_CONVERT_OBJ_TO_NATIVE 
MP_F_CONVERT_NATIVE_TO_OBJ 
MP_F_LOAD_NAME 
MP_F_LOAD_GLOBAL 
MP_F_LOAD_BUILD_CLASS 
MP_F_LOAD_ATTR 
MP_F_LOAD_METHOD 
MP_F_LOAD_SUPER_METHOD 
MP_F_STORE_NAME 
MP_F_STORE_GLOBAL 
MP_F_STORE_ATTR 
MP_F_OBJ_SUBSCR 
MP_F_OBJ_IS_TRUE 
MP_F_UNARY_OP 
MP_F_BINARY_OP 
MP_F_BUILD_TUPLE 
MP_F_BUILD_LIST 
MP_F_LIST_APPEND 
MP_F_BUILD_MAP 
MP_F_STORE_MAP 
MP_F_MAKE_FUNCTION_FROM_RAW_CODE 
MP_F_NATIVE_CALL_FUNCTION_N_KW 
MP_F_CALL_METHOD_N_KW 
MP_F_CALL_METHOD_N_KW_VAR 
MP_F_NATIVE_GETITER 
MP_F_NATIVE_ITERNEXT 
MP_F_NLR_PUSH 
MP_F_NLR_POP 
MP_F_NATIVE_RAISE 
MP_F_IMPORT_NAME 
MP_F_IMPORT_FROM 
MP_F_IMPORT_ALL 
MP_F_UNPACK_SEQUENCE 
MP_F_UNPACK_EX 
MP_F_DELETE_NAME 
MP_F_DELETE_GLOBAL 
MP_F_NEW_CELL 
MP_F_MAKE_CLOSURE_FROM_RAW_CODE 
MP_F_SETUP_CODE_STATE 
MP_F_SMALL_INT_FLOOR_DIVIDE 
MP_F_SMALL_INT_MODULO 
MP_F_NUMBER_OF 

Definition at line 141 of file runtime0.h.

◆ mp_unary_op_t

Enumerator
MP_UNARY_OP_POSITIVE 
MP_UNARY_OP_NEGATIVE 
MP_UNARY_OP_INVERT 
MP_UNARY_OP_NOT 
MP_UNARY_OP_NUM_BYTECODE 
MP_UNARY_OP_BOOL 
MP_UNARY_OP_LEN 
MP_UNARY_OP_HASH 
MP_UNARY_OP_ABS 
MP_UNARY_OP_SIZEOF 
MP_UNARY_OP_NUM_RUNTIME 

Definition at line 45 of file runtime0.h.

Variable Documentation

◆ mp_fun_table

void* const mp_fun_table[MP_F_NUMBER_OF]