clang 8.0.0

Public Member Functions | List of all members
clang::VAOptDefinitionContext Class Reference

A class for tracking whether we're inside a VA_OPT during a traversal of the tokens of a variadic macro definition. More...

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

Inheritance diagram for clang::VAOptDefinitionContext:
[legend]

## Public Member Functions
| VAOptDefinitionContext (Preprocessor &PP)
bool | isVAOptToken (const Token &T) const
bool | isInVAOpt () const
| Returns true if we have seen the VA_OPT and '(' but before having seen the matching ')'. More...
void | sawVAOptFollowedByOpeningParens (const SourceLocation LParenLoc)
| Call this function as soon as you see VA_OPT and '('. More...
SourceLocation | getUnmatchedOpeningParenLoc () const
bool | sawClosingParen ()
| Call this function each time an rparen is seen. More...
void | sawOpeningParen (SourceLocation LParenLoc)
| Call this function each time an lparen is seen. More...

## Detailed Description

A class for tracking whether we're inside a VA_OPT during a traversal of the tokens of a variadic macro definition.

Definition at line 71 of file VariadicMacroSupport.h.

## Constructor & Destructor Documentation

## ◆ VAOptDefinitionContext()

clang::VAOptDefinitionContext::VAOptDefinitionContext | ( | Preprocessor & | PP | ) |
| inline

Definition at line 79 of file VariadicMacroSupport.h.

## Member Function Documentation

## ◆ getUnmatchedOpeningParenLoc()

SourceLocation clang::VAOptDefinitionContext::getUnmatchedOpeningParenLoc | ( |  | ) | const
| inline

Definition at line 97 of file VariadicMacroSupport.h.

Referenced by isConfigurationPattern().

## ◆ isInVAOpt()

bool clang::VAOptDefinitionContext::isInVAOpt | ( |  | ) | const
| inline

Returns true if we have seen the VA_OPT and '(' but before having seen the matching ')'.

Definition at line 88 of file VariadicMacroSupport.h.

Referenced by clang::VAOptExpansionContext::getVAOptLoc(), clang::TokenLexer::Init(), and isConfigurationPattern().

## ◆ isVAOptToken()

bool clang::VAOptDefinitionContext::isVAOptToken | ( | const Token & | T | ) | const
| inline

Definition at line 82 of file VariadicMacroSupport.h.

References clang::Token::getIdentifierInfo().

Referenced by clang::VAOptExpansionContext::getVAOptLoc(), clang::TokenLexer::Init(), and isConfigurationPattern().

## ◆ sawClosingParen()

bool clang::VAOptDefinitionContext::sawClosingParen | ( |  | ) |
| inline

Call this function each time an rparen is seen.

It returns true only if the rparen that was just seen was the eventual (non-nested) closing paren for VAOPT, and ejects us out of the VAOPT context.

Definition at line 105 of file VariadicMacroSupport.h.

Referenced by clang::VAOptExpansionContext::getVAOptLoc(), clang::TokenLexer::Init(), and isConfigurationPattern().

## ◆ sawOpeningParen()

void clang::VAOptDefinitionContext::sawOpeningParen | ( | SourceLocation | LParenLoc | ) |
| inline

Call this function each time an lparen is seen.

Definition at line 112 of file VariadicMacroSupport.h.

Referenced by clang::VAOptExpansionContext::getVAOptLoc(), clang::TokenLexer::Init(), and isConfigurationPattern().

## ◆ sawVAOptFollowedByOpeningParens()

void clang::VAOptDefinitionContext::sawVAOptFollowedByOpeningParens | ( | const SourceLocation | LParenLoc | ) |
| inline

Call this function as soon as you see VA_OPT and '('.

Definition at line 91 of file VariadicMacroSupport.h.

Referenced by isConfigurationPattern(), and clang::VAOptExpansionContext::sawVAOptFollowedByOpeningParens().

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

- include/clang/Lex/VariadicMacroSupport.h