clang 8.0.0

Public Attributes | List of all members
clang::PPConditionalInfo Struct Reference

Information about the conditional stack (#if directives) currently active. More...

`#include "clang/Lex/Token.h"`

Collaboration diagram for clang::PPConditionalInfo:
[legend]

## Public Attributes
SourceLocation | IfLoc
| Location where the conditional started. More...
bool | WasSkipping
| True if this was contained in a skipping directive, e.g., in a "\#if 0" block. More...
bool | FoundNonSkip
| True if we have emitted tokens already, and now we're in an #else block or something. More...
bool | FoundElse
| True if we've seen a #else in this block. More...

## Detailed Description

Information about the conditional stack (#if directives) currently active.

Definition at line 313 of file Token.h.

## Member Data Documentation

## ◆ FoundElse

bool clang::PPConditionalInfo::FoundElse

True if we've seen a #else in this block.

If so, #elif/#else directives are not allowed.

Definition at line 327 of file Token.h.

Referenced by clang::Preprocessor::CheckEndOfDirective(), isConfigurationPattern(), and clang::PreprocessorLexer::pushConditionalLevel().

## ◆ FoundNonSkip

bool clang::PPConditionalInfo::FoundNonSkip

True if we have emitted tokens already, and now we're in an #else block or something.

Only useful in Skipping blocks.

Definition at line 323 of file Token.h.

Referenced by clang::Preprocessor::CheckEndOfDirective(), isConfigurationPattern(), and clang::PreprocessorLexer::pushConditionalLevel().

## ◆ IfLoc

SourceLocation clang::PPConditionalInfo::IfLoc

Location where the conditional started.

Definition at line 315 of file Token.h.

Referenced by clang::Preprocessor::CheckEndOfDirective(), isConfigurationPattern(), and clang::PreprocessorLexer::pushConditionalLevel().

## ◆ WasSkipping

bool clang::PPConditionalInfo::WasSkipping

True if this was contained in a skipping directive, e.g., in a "\#if 0" block.

Definition at line 319 of file Token.h.

Referenced by clang::Preprocessor::CheckEndOfDirective(), isConfigurationPattern(), and clang::PreprocessorLexer::pushConditionalLevel().

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

- include/clang/Lex/Token.h