clang
10.0.0git
|
The set of methods that override a given virtual method in each subobject where it occurs. More...
#include "clang/AST/CXXInheritance.h"
Public Types | |
using | iterator = MapType::iterator |
using | const_iterator = MapType::const_iterator |
using | overriding_iterator = SmallVectorImpl< UniqueVirtualMethod >::iterator |
using | overriding_const_iterator = SmallVectorImpl< UniqueVirtualMethod >::const_iterator |
Public Member Functions | |
iterator | begin () |
const_iterator | begin () const |
iterator | end () |
const_iterator | end () const |
unsigned | size () const |
void | add (unsigned OverriddenSubobject, UniqueVirtualMethod Overriding) |
void | add (const OverridingMethods &Other) |
void | replaceAll (UniqueVirtualMethod Overriding) |
The set of methods that override a given virtual method in each subobject where it occurs.
The first part of the pair is the subobject in which the overridden virtual function occurs, while the second part of the pair is the virtual method that overrides it (including the subobject in which that virtual function occurs).
Definition at line 280 of file CXXInheritance.h.
using clang::OverridingMethods::const_iterator = MapType::const_iterator |
Definition at line 289 of file CXXInheritance.h.
using clang::OverridingMethods::iterator = MapType::iterator |
Definition at line 288 of file CXXInheritance.h.
using clang::OverridingMethods::overriding_const_iterator = SmallVectorImpl<UniqueVirtualMethod>::const_iterator |
Definition at line 302 of file CXXInheritance.h.
using clang::OverridingMethods::overriding_iterator = SmallVectorImpl<UniqueVirtualMethod>::iterator |
Definition at line 300 of file CXXInheritance.h.
void OverridingMethods::add | ( | unsigned | OverriddenSubobject, |
UniqueVirtualMethod | Overriding | ||
) |
Definition at line 553 of file CXXInheritance.cpp.
void OverridingMethods::add | ( | const OverridingMethods & | Other | ) |
Definition at line 561 of file CXXInheritance.cpp.
|
inline |
Definition at line 291 of file CXXInheritance.h.
Referenced by add().
|
inline |
Definition at line 292 of file CXXInheritance.h.
|
inline |
Definition at line 293 of file CXXInheritance.h.
Referenced by add().
|
inline |
Definition at line 294 of file CXXInheritance.h.
void OverridingMethods::replaceAll | ( | UniqueVirtualMethod | Overriding | ) |
Definition at line 571 of file CXXInheritance.cpp.
References clang::CXXRecordDecl::bases(), clang::CXXBasePaths::begin(), clang::CXXBasePaths::end(), clang::CXXRecordDecl::getCanonicalDecl(), clang::CXXMethodDecl::getCanonicalDecl(), clang::CXXRecordDecl::isPolymorphic(), and clang::CXXRecordDecl::methods().
|
inline |
Definition at line 295 of file CXXInheritance.h.