clang  16.0.0git
Public Types | Public Member Functions | List of all members
clang::Dependence Class Reference

#include "clang/AST/DependenceFlags.h"

Public Types

enum  Bits : uint8_t {
  None = 0, UnexpandedPack = 1, Instantiation = 2, Type = 4,
  Value = 8, Dependent = Type | Value, Error = 16, VariablyModified = 32,
  Syntactic = UnexpandedPack | Instantiation | Error, Semantic
}
 

Public Member Functions

 Dependence ()
 
 Dependence (TypeDependence D)
 
 Dependence (ExprDependence D)
 
 Dependence (NestedNameSpecifierDependence D)
 
 Dependence (TemplateArgumentDependence D)
 
 Dependence (TemplateNameDependence D)
 
Dependence syntactic ()
 Extract only the syntactic portions of this type's dependence. More...
 
Dependence semantic ()
 Extract the semantic portions of this type's dependence that apply even to uses where the type does not appear syntactically. More...
 
TypeDependence type () const
 
ExprDependence expr () const
 
NestedNameSpecifierDependence nestedNameSpecifier () const
 
TemplateArgumentDependence templateArgument () const
 
TemplateNameDependence templateName () const
 

Detailed Description

Definition at line 106 of file DependenceFlags.h.

Member Enumeration Documentation

◆ Bits

enum clang::Dependence::Bits : uint8_t
Enumerator
None 
UnexpandedPack 
Instantiation 
Type 
Value 
Dependent 
Error 
VariablyModified 
Syntactic 
Semantic 

Definition at line 108 of file DependenceFlags.h.

Constructor & Destructor Documentation

◆ Dependence() [1/6]

clang::Dependence::Dependence ( )
inline

Definition at line 145 of file DependenceFlags.h.

◆ Dependence() [2/6]

clang::Dependence::Dependence ( TypeDependence  D)
inline

Definition at line 147 of file DependenceFlags.h.

◆ Dependence() [3/6]

clang::Dependence::Dependence ( ExprDependence  D)
inline

Definition at line 154 of file DependenceFlags.h.

◆ Dependence() [4/6]

clang::Dependence::Dependence ( NestedNameSpecifierDependence  D)
inline

Definition at line 161 of file DependenceFlags.h.

◆ Dependence() [5/6]

clang::Dependence::Dependence ( TemplateArgumentDependence  D)
inline

Definition at line 167 of file DependenceFlags.h.

◆ Dependence() [6/6]

clang::Dependence::Dependence ( TemplateNameDependence  D)
inline

Definition at line 173 of file DependenceFlags.h.

Member Function Documentation

◆ expr()

ExprDependence clang::Dependence::expr ( ) const
inline

◆ nestedNameSpecifier()

NestedNameSpecifierDependence clang::Dependence::nestedNameSpecifier ( ) const
inline

Definition at line 210 of file DependenceFlags.h.

References Dependent, Error, Instantiation, and UnexpandedPack.

Referenced by clang::toNestedNameSpecifierDependendence().

◆ semantic()

Dependence clang::Dependence::semantic ( )
inline

Extract the semantic portions of this type's dependence that apply even to uses where the type does not appear syntactically.

Definition at line 188 of file DependenceFlags.h.

References Semantic.

Referenced by clang::toExprDependenceForImpliedType(), and clang::toSemanticDependence().

◆ syntactic()

Dependence clang::Dependence::syntactic ( )
inline

Extract only the syntactic portions of this type's dependence.

Definition at line 180 of file DependenceFlags.h.

References Syntactic.

Referenced by clang::toSyntacticDependence().

◆ templateArgument()

TemplateArgumentDependence clang::Dependence::templateArgument ( ) const
inline

Definition at line 217 of file DependenceFlags.h.

References Dependent, Error, Instantiation, and UnexpandedPack.

Referenced by clang::toTemplateArgumentDependence().

◆ templateName()

TemplateNameDependence clang::Dependence::templateName ( ) const
inline

Definition at line 224 of file DependenceFlags.h.

References Dependent, Error, Instantiation, and UnexpandedPack.

Referenced by clang::toTemplateNameDependence().

◆ type()

TypeDependence clang::Dependence::type ( ) const
inline

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