Changeset 351 in dev for trunk/abdev/BasicCompiler_Common/include
- Timestamp:
- Oct 17, 2007, 3:31:20 AM (17 years ago)
- Location:
- trunk/abdev/BasicCompiler_Common/include
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/abdev/BasicCompiler_Common/include/Method.h
r347 r351 51 51 } 52 52 53 virtual bool Override( const UserProc *pUserProc, Prototype::Accessibility accessibility, bool isOverrideModifier ) = 0; 54 53 55 virtual bool IsAbstract() const = 0; 54 virtual void Override() = 0;56 virtual void SetAbstractMark( bool isAbstractMark ) = 0; 55 57 virtual bool IsVirtual() const = 0; 56 58 virtual bool IsConst() const = 0; … … 103 105 } 104 106 107 virtual bool Override( const UserProc *pUserProc, Prototype::Accessibility accessibility, bool isOverrideModifier ); 108 105 109 virtual bool IsAbstract() const 106 110 { 107 111 return isAbstract; 108 112 } 109 virtual void Override()110 { 111 isAbstract = false;113 virtual void SetAbstractMark( bool isAbstract ) 114 { 115 this->isAbstract = isAbstract; 112 116 } 113 117 virtual bool IsVirtual() const … … 150 154 151 155 public: 156 157 // コンストラクタ 152 158 StaticMethod( UserProc *pUserProc, Prototype::Accessibility accessibility ) 153 159 : CMethod( pUserProc, accessibility ) 154 160 { 155 161 } 162 163 // コピーコンストラクタ 164 StaticMethod( const StaticMethod &staticMethod ); 165 166 // デストラクタ 156 167 StaticMethod() 157 168 { 158 169 } 159 170 171 virtual bool Override( const UserProc *pUserProc, Prototype::Accessibility accessibility, bool isOverrideModifier ){SetError();return false;} 172 160 173 virtual bool IsAbstract() const{SetError();return false;} 161 virtual void Override(){SetError();}174 virtual void SetAbstractMark( bool isAbstract ){SetError();} 162 175 virtual bool IsVirtual() const{ 163 176 return false; … … 190 203 191 204 public: 205 // コンストラクタ 192 206 Methods(); 207 208 // コピーコンストラクタ 209 Methods( const Methods &methods ); 210 211 // デストラクタ 193 212 ~Methods(); 194 213 … … 197 216 void AddStatic(UserProc *pUserProc,Prototype::Accessibility accessibility); 198 217 199 // オーバーライド 200 bool Override( UserProc *pUserProc, Prototype::Accessibility accessibility);218 // オーバーライドのための検索 219 CMethod *FindForOverride( const UserProc *pUserProc ); 201 220 202 221 const CMethod *GetMethodPtr( const UserProc *pUserProc ) const; -
trunk/abdev/BasicCompiler_Common/include/Procedure.h
r350 r351 220 220 } 221 221 222 // オーバーライド用に関数同士が等しいかどうかをチェックする 223 bool IsEqualForOverride( const UserProc *pUserProc ) const 224 { 225 if( this->GetName() == pUserProc->GetName() // 名前空間及び名前が等しい 226 && this->Params().Equals( pUserProc->Params() ) // パラメータが等しい 227 && this->returnType.Equals( pUserProc->returnType ) ) // 戻り値が等しい 228 { 229 return true; 230 } 231 return false; 232 } 233 222 234 bool IsMacro() const 223 235 {
Note:
See TracChangeset
for help on using the changeset viewer.