clang  6.0.0svn
Public Member Functions | Public Attributes | Friends | List of all members
clang::UniqueVirtualMethod Struct Reference

Uniquely identifies a virtual method within a class hierarchy by the method itself and a class subobject number. More...

#include "clang/AST/CXXInheritance.h"

Collaboration diagram for clang::UniqueVirtualMethod:
Collaboration graph
[legend]

Public Member Functions

 UniqueVirtualMethod ()=default
 
 UniqueVirtualMethod (CXXMethodDecl *Method, unsigned Subobject, const CXXRecordDecl *InVirtualSubobject)
 

Public Attributes

CXXMethodDeclMethod = nullptr
 The overriding virtual method. More...
 
unsigned Subobject = 0
 The subobject in which the overriding virtual method resides. More...
 
const CXXRecordDeclInVirtualSubobject = nullptr
 The virtual base class subobject of which this overridden virtual method is a part. More...
 

Friends

bool operator== (const UniqueVirtualMethod &X, const UniqueVirtualMethod &Y)
 
bool operator!= (const UniqueVirtualMethod &X, const UniqueVirtualMethod &Y)
 

Detailed Description

Uniquely identifies a virtual method within a class hierarchy by the method itself and a class subobject number.

Definition at line 237 of file CXXInheritance.h.

Constructor & Destructor Documentation

◆ UniqueVirtualMethod() [1/2]

clang::UniqueVirtualMethod::UniqueVirtualMethod ( )
default

◆ UniqueVirtualMethod() [2/2]

clang::UniqueVirtualMethod::UniqueVirtualMethod ( CXXMethodDecl Method,
unsigned  Subobject,
const CXXRecordDecl InVirtualSubobject 
)
inline

Definition at line 252 of file CXXInheritance.h.

Friends And Related Function Documentation

◆ operator!=

bool operator!= ( const UniqueVirtualMethod X,
const UniqueVirtualMethod Y 
)
friend

Definition at line 263 of file CXXInheritance.h.

◆ operator==

bool operator== ( const UniqueVirtualMethod X,
const UniqueVirtualMethod Y 
)
friend

Definition at line 257 of file CXXInheritance.h.

Member Data Documentation

◆ InVirtualSubobject

const CXXRecordDecl* clang::UniqueVirtualMethod::InVirtualSubobject = nullptr

The virtual base class subobject of which this overridden virtual method is a part.

Note that this records the closest derived virtual base class subobject.

Definition at line 248 of file CXXInheritance.h.

◆ Method

CXXMethodDecl* clang::UniqueVirtualMethod::Method = nullptr

The overriding virtual method.

Definition at line 239 of file CXXInheritance.h.

◆ Subobject

unsigned clang::UniqueVirtualMethod::Subobject = 0

The subobject in which the overriding virtual method resides.

Definition at line 243 of file CXXInheritance.h.


The documentation for this struct was generated from the following file: