Changeset 558 in dev for trunk/ab5.0/abdev/BasicCompiler_Common/include
- Timestamp:
- May 5, 2008, 10:41:25 AM (17 years ago)
- Location:
- trunk/ab5.0/abdev/BasicCompiler_Common/include
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/ab5.0/abdev/BasicCompiler_Common/include/Class.h
r557 r558 316 316 317 317 // インターフェイス実装 318 void Implements( const CClass &interfaceClass, const Types &actualTypeParameters, int nowLine);318 void Implements( const CClass &interfaceClass, const Types &actualTypeParameters, std::vector<DynamicMethod::OverrideResult> &overrideResults ); 319 319 320 320 //メンバ、メソッドの追加 -
trunk/ab5.0/abdev/BasicCompiler_Common/include/Method.h
r523 r558 37 37 this->pUserProc = pUserProc; 38 38 } 39 40 virtual bool Override( const UserProc *pUserProc, Prototype::Accessibility accessibility, bool isOverrideModifier ) = 0;41 39 42 40 virtual bool IsAbstract() const = 0; … … 54 52 class DynamicMethod : public CMethod 55 53 { 54 public: 55 struct OverrideResult 56 { 57 enum EnumType 58 { 59 Successful = 0, // オーバーライドに成功 60 NotVirtual, // 非Virtualメソッドに対してオーバーライドを行おうとした 61 NotUseOverrideModifier, // Override修飾子が無い状況で基底クラスの実体メソッドをオーバーライドしようとした 62 DifferentAccesibility, // オーバーライド元、先のアクセシビリティに相違がある 63 }; 64 65 EnumType enumType; 66 const CMethod *pMethod; 67 }; 68 69 private: 56 70 bool isAbstract; 57 71 bool isVirtual; … … 100 114 } 101 115 102 virtual boolOverride( const UserProc *pUserProc, Prototype::Accessibility accessibility, bool isOverrideModifier );116 DynamicMethod::OverrideResult::EnumType Override( const UserProc *pUserProc, Prototype::Accessibility accessibility, bool isOverrideModifier ); 103 117 104 118 virtual bool IsAbstract() const … … 250 264 pUserProc 照らし合わせる関数 251 265 */ 252 CMethod *FindForOverride( const Types &actualTypeParametersForThisMethods, const UserProc *pUserProc );266 DynamicMethod *FindForOverride( const Types &actualTypeParametersForThisMethods, const UserProc *pUserProc ); 253 267 254 268 const CMethod *GetMethodPtr( const UserProc *pUserProc ) const;
Note:
See TracChangeset
for help on using the changeset viewer.