class CXXFieldCollector

Declaration

class CXXFieldCollector { /* full declaration omitted */ };

Description

CXXFieldCollector - Used to keep track of CXXFieldDecls during parsing of C++ classes.

Declared at: clang/include/clang/Sema/CXXFieldCollector.h:25

Member Variables

private SmallVector<clang::FieldDecl*, 32> Fields
Fields - Contains all FieldDecls collected during parsing of a C++ class. When a nested class is entered, its fields are appended to the fields of its parent class, when it is exited its fields are removed.
private SmallVector<size_t, 4> FieldCount
FieldCount - Each entry represents the number of fields collected during the parsing of a C++ class. When a nested class is entered, a new field count is pushed, when it is exited, the field count is popped.

Method Overview

Methods

void Add(clang::FieldDecl* D)

Description

Add - Called by Sema::ActOnCXXMemberDeclarator.

Declared at: clang/include/clang/Sema/CXXFieldCollector.h:55

Parameters

clang::FieldDecl* D

void FinishClass()

Description

FinishClass - Called by Sema::ActOnFinishCXXClassDef.

Declared at: clang/include/clang/Sema/CXXFieldCollector.h:71

void StartClass()

Description

StartClass - Called by Sema::ActOnStartCXXClassDef.

Declared at: clang/include/clang/Sema/CXXFieldCollector.h:52

clang::FieldDecl** getCurFields()

Description

getCurFields - Pointer to array of fields added to the currently parsed class.

Declared at: clang/include/clang/Sema/CXXFieldCollector.h:68

size_t getCurNumFields() const

Description

getCurNumField - The number of fields added to the currently parsed class.

Declared at: clang/include/clang/Sema/CXXFieldCollector.h:61