#pragma once enum PareOrBracket { None = 0, Pare, // (...) Bracket, // [...] }; BOOL IsPtrType(int type); BOOL IsSignedType(int type); BOOL IsNaturalWholeNumberType(int type); BOOL IsWholeNumberType(int type); BOOL IsRealNumberType(int type); BOOL Is64Type(int type); int GetSignedType(int type); int GetUnsignedType(int type); int GetPtrType(int type); BOOL GetTypeName(int type,LONG_PTR lpIndex,char *name); Type GetStringTypeInfo(); void GetWithName(char *buffer); BOOL GetVarFormatString(char *buffer,char *array,char *array2,char *NestMember, ReferenceKind &refType, PareOrBracket *pPareOrBracket = NULL ); void GetArrayElement( const char *buffer,char *variable,char *array_element); BOOL CheckVarNameError(char *name,int nowLine); int JumpSubScripts( const Subscripts &subscripts ); bool GetMemberType( const Type &classType, const char *lpszMember, Type &resultType, BOOL bPrivateAccess, bool isErrorEnabled); bool GetVarType( const char *nameBuffer, Type &resultType, bool isError); bool GetVarOffsetReadOnly(const char *NameBuffer,RELATIVE_VAR *pRelativeVar,Type &resultType, Subscripts *pResultSubscripts = NULL ); bool GetVarOffsetReadWrite(const char *NameBuffer,RELATIVE_VAR *pRelativeVar,Type &resultType, Subscripts *pResultSubscripts = NULL ); bool GetDimentionFormat( const char *buffer, char *VarName, Subscripts &subscripts, Type &type, char *InitBuf, char *ConstractParameter ); BOOL GetNowStaticVarFullName(char *VarName,char *FullName); void AddGlobalVariable( const char *name, const Subscripts &subscripts, const Type &type,const char *InitBuf,const char *ConstractParameter,DWORD dwFlag); void dim(char *Parameter,DWORD dwFlags); void OpcodeDim(char *Parameter,DWORD dwFlags); void DebugVariable(void);