python-on-a-chip online compiler
interp.h File Reference
VM Interpreter. More...
Go to the source code of this file.
Typedefs | |
typedef enum PmCompare_e | PmCompare_t |
COMPARE_OP enum. | |
typedef enum PmBcode_e | PmBcode_t |
Byte code enumeration. | |
Enumerations | |
enum | PmCompare_e { COMP_LT = 0, COMP_LE, COMP_EQ, COMP_NE, COMP_GT, COMP_GE, COMP_IN, COMP_NOT_IN, COMP_IS, COMP_IS_NOT, COMP_EXN_MATCH } |
COMPARE_OP enum. More... | |
enum | PmBcode_e |
Byte code enumeration. More... | |
Functions | |
PmReturn_t | interpret (const uint8_t returnOnNoThreads) |
Interprets the available threads. | |
PmReturn_t | interp_reschedule (void) |
Selects a thread to run and changes the VM internal variables to let the switch-loop execute the chosen one in the next iteration. | |
PmReturn_t | interp_addThread (pPmFunc_t pfunc) |
Creates a thread object and adds it to the queue of threads to be executed while interpret() is running. | |
void | interp_setRescheduleFlag (uint8_t boolean) |
Sets the reschedule flag. |
Detailed Description
VM Interpreter.
VM interpreter header.
Definition in file interp.h.
Typedef Documentation
typedef enum PmCompare_e PmCompare_t |
COMPARE_OP enum.
Used by the COMPARE_OP bytecode to determine which type of compare to perform. Must match those defined in Python.
Enumeration Type Documentation
enum PmCompare_e |
COMPARE_OP enum.
Used by the COMPARE_OP bytecode to determine which type of compare to perform. Must match those defined in Python.
Function Documentation
PmReturn_t interp_addThread | ( | pPmFunc_t | pfunc ) |
Creates a thread object and adds it to the queue of threads to be executed while interpret() is running.
The given obj may be a function, module, or class. Creates a frame for the given function.
- Parameters:
-
pfunc Ptr to function to be executed as a thread.
- Returns:
- Return status
PmReturn_t interp_reschedule | ( | void | ) |
void interp_setRescheduleFlag | ( | uint8_t | boolean ) |
PmReturn_t interpret | ( | const uint8_t | returnOnNoThreads ) |
Generated on Tue Jul 12 2022 23:13:47 by 1.7.2