Changeset 135 in dev for BasicCompiler32
- Timestamp:
- Jun 6, 2007, 12:58:40 AM (17 years ago)
- Location:
- BasicCompiler32
- Files:
-
- 9 edited
Legend:
- Unmodified
- Added
- Removed
-
BasicCompiler32/BasicCompiler.vcproj
r134 r135 1822 1822 Name="Meta Parts" 1823 1823 > 1824 <File 1825 RelativePath="..\BasicCompiler_Common\src\Member.cpp" 1826 > 1827 </File> 1828 <File 1829 RelativePath="..\BasicCompiler_Common\src\Method.cpp" 1830 > 1831 </File> 1824 1832 <File 1825 1833 RelativePath="..\BasicCompiler_Common\src\Namespace.cpp" … … 1956 1964 </File> 1957 1965 <File 1958 RelativePath="..\BasicCompiler_Common\include\Prototype.h"1959 >1960 </File>1961 <File1962 1966 RelativePath="..\BasicCompiler_Common\Type.h" 1963 1967 > … … 1971 1975 > 1972 1976 </File> 1977 <Filter 1978 Name="Prototype" 1979 > 1980 <File 1981 RelativePath="..\BasicCompiler_Common\include\Member.h" 1982 > 1983 </File> 1984 <File 1985 RelativePath="..\BasicCompiler_Common\include\Method.h" 1986 > 1987 </File> 1988 <File 1989 RelativePath="..\BasicCompiler_Common\include\Prototype.h" 1990 > 1991 </File> 1992 </Filter> 1973 1993 </Filter> 1974 1994 <Filter -
BasicCompiler32/Compile_Calc.cpp
r129 r135 622 622 // Blittable型をオブジェクトとして扱う 623 623 vector<UserProc *> userProcs; 624 Smoothie::Meta::blittableTypes.GetClass( calcType ). EnumStaticMethod( "_Create", userProcs );624 Smoothie::Meta::blittableTypes.GetClass( calcType ).GetStaticMethods().EnumStatic( "_Create", userProcs ); 625 625 if( userProcs.size() != 1 ){ 626 626 SetError(); -
BasicCompiler32/Compile_CallProc.cpp
r113 r135 113 113 bool isStatic = false; 114 114 const CClass *pobj_c = NULL; 115 CMethod *pMethod = NULL;115 const CMethod *pMethod = NULL; 116 116 if( pUserProc->GetParentClassPtr() ){ 117 117 //クラスのメンバ関数を呼び出す場合はアクセスチェックを行う … … 153 153 ///////////////////////////////// 154 154 pMethod = NULL; 155 if( ! isStatic ) pMethod = pobj_c->GetMethod Info( pUserProc );155 if( ! isStatic ) pMethod = pobj_c->GetMethods().GetMethodPtr( pUserProc ); 156 156 if( ! pMethod ){ 157 157 //動的メソッドが取得できなかったときは静的メソッドを当たる 158 pMethod = pobj_c->GetStaticMethod Info( pUserProc );158 pMethod = pobj_c->GetStaticMethods().GetMethodPtr( pUserProc ); 159 159 if( !pMethod ){ 160 160 SetError(300,NULL,cp); … … 276 276 else{ 277 277 RELATIVE_VAR RelativeVar; 278 if( pMethod-> isConst){278 if( pMethod->IsConst() ){ 279 279 //Constアクセスが可能なメソッドの場合 280 280 if( !GetVarOffsetReadOnly( ObjectName, &RelativeVar, Type() ) ){ -
BasicCompiler32/Compile_Object.cpp
r131 r135 36 36 37 37 std::vector<UserProc *> subs; 38 pobj_c-> EnumMethod( pobj_c->GetName().c_str(), subs );38 pobj_c->GetMethods().Enum( pobj_c->GetName().c_str(), subs ); 39 39 40 40 UserProc *pUserProc; … … 56 56 // obj._System_SetType( _System_TypeBase.Search( strNamespace, name ) ) 57 57 subs.clear(); 58 pobj_c-> EnumMethod( "_System_SetType", subs );58 pobj_c->GetMethods().Enum( "_System_SetType", subs ); 59 59 if( subs.size() == 1 ){ 60 60 char temporary[VN_SIZE]; … … 208 208 209 209 210 CMethod *method = classObj.GetDestructorMethod();210 const CMethod *method = classObj.GetDestructorMethod(); 211 211 if( method == NULL ) return; 212 212 -
BasicCompiler32/Compile_ProcOp.cpp
r131 r135 599 599 基底クラスのデストラクタを呼び出す */ 600 600 601 CMethod *method = pobj_CompilingClass->pobj_InheritsClass->GetDestructorMethod();601 const CMethod *method = pobj_CompilingClass->pobj_InheritsClass->GetDestructorMethod(); 602 602 if( method ){ 603 603 Opcode_CallProc("", -
BasicCompiler32/Compile_Statement.cpp
r129 r135 1075 1075 if(type1.IsObject()){ 1076 1076 std::vector<UserProc *> subs; 1077 type1.GetClass(). EnumMethod( CALC_EQUAL, subs );1077 type1.GetClass().GetMethods().Enum( CALC_EQUAL, subs ); 1078 1078 if( subs.size() == 0 ){ 1079 1079 return; -
BasicCompiler32/Compile_Var.cpp
r131 r135 445 445 446 446 for(i=0;i<pobj_CompilingClass->iMemberNum;i++){ 447 if(lstrcmp(VarName,pobj_CompilingClass->ppobj_Member[i]->name)==0) break; 447 if( pobj_CompilingClass->ppobj_Member[i]->GetName() == VarName ){ 448 break; 449 } 448 450 } 449 451 if(i==pobj_CompilingClass->iMemberNum) goto NonClassMember; … … 452 454 //Const修飾子のメソッド内でメンバ書き込みアクセスが発生したとき 453 455 //(コンストラクタ、デストラクタ内を除く) 454 CMethod *pMethod = pobj_DBClass->GetNowCompilingMethodInfo();456 const CMethod *pMethod = pobj_DBClass->GetNowCompilingMethodInfo(); 455 457 if( isWriteAccess && 456 pMethod-> isConst&&458 pMethod->IsConst() && 457 459 pobj_CompilingClass->IsCompilingConstructor() == false && 458 460 pobj_CompilingClass->IsCompilingDestructor() == false … … 750 752 i=GetOneParameter(InitBuf,i,temporary); 751 753 752 i3=objClass.GetMemberOffset( objClass.ppobj_Member[i2]-> name, NULL );754 i3=objClass.GetMemberOffset( objClass.ppobj_Member[i2]->GetName().c_str(), NULL ); 753 755 754 756 if(!SetInitGlobalData(offset+i3, … … 886 888 i=GetOneParameter(InitBuf,i,temporary); 887 889 888 i3=objClass.GetMemberOffset( objClass.ppobj_Member[i2]-> name, NULL );890 i3=objClass.GetMemberOffset( objClass.ppobj_Member[i2]->GetName().c_str(), NULL ); 889 891 890 892 if(!InitLocalVar(offset+i3, -
BasicCompiler32/NumOpe.cpp
r128 r135 181 181 GetVarFormatString(methodName,parameter,lpPtrOffset,dummy,refType); 182 182 183 objClass. EnumMethod( methodName, userProcs );183 objClass.GetMethods().Enum( methodName, userProcs ); 184 184 UserProc *pUserProc; 185 185 if(userProcs.size()){ -
BasicCompiler32/OperatorProc.cpp
r76 r135 5 5 if(!IsSafeReg(reg)) SetError(300,NULL,cp); 6 6 7 CMethod *method = pobj_c->GetDestructorMethod();7 const CMethod *method = pobj_c->GetDestructorMethod(); 8 8 if( method ){ 9 9 //push reg … … 28 28 29 29 std::vector<UserProc *> subs; 30 pobj_c-> EnumMethod( idCalc, subs );30 pobj_c->GetMethods().Enum( idCalc, subs ); 31 31 if( subs.size() == 0 ){ 32 32 return 0; … … 250 250 void CallIndexerGetterProc(const CClass *pobj_Class,char *ObjectName,char *Parameter,Type &resultType){ 251 251 std::vector<UserProc *> subs; 252 pobj_Class-> EnumMethod( CALC_ARRAY_GET, subs );252 pobj_Class->GetMethods().Enum( CALC_ARRAY_GET, subs ); 253 253 if( subs.size() == 0 ){ 254 254 return;
Note:
See TracChangeset
for help on using the changeset viewer.