class ParsingDeclRAIIObject

Declaration

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

Description

RAII object used to inform the actions that we're currently parsing a declaration. This is active when parsing a variable's initializer, but not when parsing the body of a class or function definition.

Declared at: clang/include/clang/Parse/RAIIObjectsForParser.h:90

Member Variables

private clang::Sema& Actions
private sema::DelayedDiagnosticPool DiagnosticPool
private Sema::ParsingDeclState State
private bool Popped

Method Overview

Methods

ParsingDeclRAIIObject(
    const clang::ParsingDeclRAIIObject&)

Declared at: clang/include/clang/Parse/RAIIObjectsForParser.h:96

Parameters

const clang::ParsingDeclRAIIObject&

ParsingDeclRAIIObject(
    clang::Parser& P,
    clang::ParsingDeclRAIIObject::NoParent_t _)

Declared at: clang/include/clang/Parse/RAIIObjectsForParser.h:101

Parameters

clang::Parser& P
clang::ParsingDeclRAIIObject::NoParent_t _

ParsingDeclRAIIObject(
    clang::Parser& P,
    const sema::DelayedDiagnosticPool* parentPool)

Description

Creates a RAII object whose pool is optionally parented by another.

Declared at: clang/include/clang/Parse/RAIIObjectsForParser.h:107

Parameters

clang::Parser& P
const sema::DelayedDiagnosticPool* parentPool

ParsingDeclRAIIObject(
    clang::Parser& P,
    clang::ParsingDeclRAIIObject* other)

Description

Creates a RAII object and, optionally, initialize its diagnostics pool by stealing the diagnostics from another RAII object (which is assumed to be the current top pool).

Declared at: clang/include/clang/Parse/RAIIObjectsForParser.h:116

Parameters

clang::Parser& P
clang::ParsingDeclRAIIObject* other

void abort()

Description

Signals that the context was completed without an appropriate declaration being parsed.

Declared at: clang/include/clang/Parse/RAIIObjectsForParser.h:145

void abortAndRemember()

Description

Unregister this object from Sema, but remember all the diagnostics that were emitted into it.

Declared at: clang/include/clang/Parse/RAIIObjectsForParser.h:156

void complete(clang::Decl* D)

Declared at: clang/include/clang/Parse/RAIIObjectsForParser.h:149

Parameters

clang::Decl* D

sema::DelayedDiagnosticPool&
getDelayedDiagnosticPool()

Declared at: clang/include/clang/Parse/RAIIObjectsForParser.h:130

const sema::DelayedDiagnosticPool&
getDelayedDiagnosticPool() const

Declared at: clang/include/clang/Parse/RAIIObjectsForParser.h:133

void pop(clang::Decl* D)

Declared at: clang/include/clang/Parse/RAIIObjectsForParser.h:166

Parameters

clang::Decl* D

void push()

Declared at: clang/include/clang/Parse/RAIIObjectsForParser.h:161

void reset()

Description

Resets the RAII object for a new declaration.

Declared at: clang/include/clang/Parse/RAIIObjectsForParser.h:138

~ParsingDeclRAIIObject()

Declared at: clang/include/clang/Parse/RAIIObjectsForParser.h:126