Changeset 64 in dev for BasicCompiler32/Opcode.h


Ignore:
Timestamp:
Mar 8, 2007, 2:49:34 AM (17 years ago)
Author:
dai_9181
Message:

すべてのオブジェクトを参照型に切り替えた。

File:
1 edited

Legend:

Unmodified
Added
Removed
  • BasicCompiler32/Opcode.h

    r62 r64  
    9797void ChangeTypeToInteger(int OldType);
    9898void ChangeTypeToByte(int OldType);
     99void SetVariableFromEax(int VarType,int CalcType,RELATIVE_VAR *pRelativeVar);
    99100void OpcodeCalc(char *Command);
    100 void SetRefVariable( const char *varname, const char *expression );
    101101
    102102//NumOpe.cpp
     
    136136//Compile_Set_Var.cpp
    137137BOOL IsUse_ecx(RELATIVE_VAR *pRelativeVar);
    138 void SetObjectVariable(LONG_PTR lpVarIndex,int CalcType,LONG_PTR lpCalcIndex,BOOL bUseHeap);
     138void SetStructVariable(LONG_PTR lpVarIndex,int CalcType,LONG_PTR lpCalcIndex,BOOL bUseHeap);
     139void SetRealVariable(int VarType, int CalcType, RELATIVE_VAR *pRelativeVar);
     140void SetWholeVariable(int var_size,int type,RELATIVE_VAR *pRelative);
     141
    139142void SetDoubleVariable(int type,DWORD VarKind,DWORD offset,BOOL bOffsetOffset);
    140143void SetSingleVariable(int type,DWORD VarKind,DWORD offset,BOOL bOffsetOffset);
     
    171174
    172175//Compile_Object.cpp
    173 int Operator_New(const char *Parameter,LONG_PTR *plpIndex);
    174 void OpcodeDelete(char *Parameter);
     176void Operator_New( CClass &classObj, const char *objectSizeStr, const char *parameter, const TYPEINFO &baseTypeInfo );
     177int Operator_New(const char *Parameter,LONG_PTR *plpIndex,const TYPEINFO &baseTypeInfo );
     178void OpcodeDelete(const char *Parameter, bool isSweeping);
    175179
    176180//Compile_Var.cpp
     
    183187#define DIMFLAG_STATIC                  4
    184188#define DIMFLAG_CONST                   8
     189void dim(bool isRef, char *VarName,int *SubScripts,TYPEINFO &TypeInfo,int TypeSize,char *InitBuf,char *ConstractParameter,DWORD dwFlags);
    185190void OpcodeDim(char *Parameter,DWORD dwFlag);
    186191void SetVarPtrToEax(RELATIVE_VAR *pRelativeVar);
    187192
    188193//CParameter.cpp
     194#define OVERLOAD_MIN_LEVEL 0
     195#define OVERLOAD_MAX_LEVEL 3
     196#define OVERLOAD_LEVEL0 0
    189197#define OVERLOAD_LEVEL1 1
    190198#define OVERLOAD_LEVEL2 2
     
    216224    BOOL ErrorCheck(const char *FuncName,PARAMETER_INFO *ppi,int pi_num,int SecondParmNum);
    217225    void MacroParameterSupport(PARAMETER_INFO *ppi);
    218     void SetObjectParameter(CClass *pobj_Class,LPSTR Parameter);
     226    void SetStructParameter(CClass *pobj_Class,LPSTR Parameter);
    219227    int SetParameter(const char *FuncName,PARAMETER_INFO *ppi,int pi_num,int SecondParmNum);
    220228
    221229    //一時オブジェクトパラメータの生成と破棄
    222     void NewTempParameters( const char *FuncName,PARAMETER_INFO *ppi,int pi_num,int SecondParmNum );
     230    int NewTempParameters( const char *FuncName,PARAMETER_INFO *ppi,int pi_num,int SecondParmNum );
    223231    void DeleteTempParameters();
    224232};
     
    228236#define PROCFLAG_NEW    1
    229237int Opcode_CallProcPtr(char *variable,char *Parameter,PROCPTRINFO *pi,LONG_PTR *plpIndex);
    230 void Opcode_CallProc(char *Parameter,SUBINFO *psi,DWORD dwFlags,char *ObjectName,int RefType);
     238void Opcode_CallProc(const char *Parameter,SUBINFO *psi,DWORD dwFlags,char *ObjectName,int RefType);
    231239int Opcode_CallDllProc(char *Parameter,DECLAREINFO *pdi,LONG_PTR *plpIndex);
    232240
     
    258266void OpcodeGosub(char *Parameter);
    259267void OpcodeReturn(char *Parameter);
    260 void Opcode_Input(char *Parameter);
    261 void Opcode_Print(char *Parameter,BOOL bWrite);
     268void Opcode_Input(const char *Parameter);
     269void Opcode_Print(const char *Parameter,BOOL bWrite);
    262270void OpcodeCallPtr(char *Parameter);
    263271void OpcodeSetPtrData(char *Parameter,int type);
     
    300308void op_sbb_RV8         (int reg,char cValue);
    301309void op_sbb_RR          ( int reg1, int reg2 );
     310void op_imul_RR         (int reg1,int reg2);
     311void op_imul_RV         (int reg,int i32data);
    302312void op_and_RV          (int reg,int value);
    303313void op_or_RR           ( int op_size, int reg1, int reg2 );
     
    312322void op_add_esp(int num);
    313323void op_sub_esp(int num);
     324void op_cmp_RR( int reg1, int reg2 );
    314325void op_cmp_value(int op_size,int reg,char byte_data);
    315326void op_setne( int reg );
Note: See TracChangeset for help on using the changeset viewer.