use class dif for PikaObj

This commit is contained in:
lyon 2022-05-22 18:03:19 +08:00
parent 230a9da244
commit 64730bca8f

View File

@ -52,30 +52,34 @@ def_class(InstructUnit,
dcl_class(ConstPool);
def_class(
ConstPool,
private_member(Arg* arg_buff; uint16_t content_offset_now; uint16_t size;
void* content_start;
void (*output_redirect_fun)(ConstPool* self, char* content);
FILE * output_f;));
def_class(ConstPool,
private_member(
Arg* arg_buff;
uint16_t content_offset_now;
uint16_t size;
void* content_start;
void (*output_redirect_fun)(ConstPool* self, char* content);
FILE * output_f;
));
dcl_class(InstructArray);
def_class(InstructArray,
private_member(Arg* arg_buff; uint16_t content_offset_now;
uint16_t size;
void* content_start;
void (*output_redirect_fun)(InstructArray* self,
InstructUnit* ins_unit);
FILE * output_f;)
);
private_member(
Arg* arg_buff; uint16_t content_offset_now;
uint16_t size;
void* content_start;
void (*output_redirect_fun)(InstructArray* self,
InstructUnit* ins_unit);
FILE * output_f;
));
dcl_class(ByteCodeFrame);
def_class(ByteCodeFrame,
private_member(ConstPool const_pool; InstructArray instruct_array;));
private_member(
ConstPool const_pool;
InstructArray instruct_array;
));
dcl_class(PikaObj);
def_class(PikaObj, Args* list;);
@ -86,11 +90,15 @@ typedef PikaObj VMParameters;
typedef void (*Method)(PikaObj* self, Args* args);
dcl_class(MethodInfo);
def_class(MethodInfo,
private_member(char* name; char* dec; char* ptr; char* pars;
ArgType type;
ByteCodeFrame * bytecode_frame;));
private_member(
char* name;
char* dec;
char* ptr;
char* pars;
ArgType type;
ByteCodeFrame * bytecode_frame;
));
typedef PikaObj LibObj;
typedef PikaObj PikaMaker;