clang API Documentation

Public Member Functions | Static Public Member Functions
clang::UnaryExprOrTypeTraitExpr Class Reference

#include <Expr.h>

Inheritance diagram for clang::UnaryExprOrTypeTraitExpr:
Inheritance graph
[legend]
Collaboration diagram for clang::UnaryExprOrTypeTraitExpr:
Collaboration graph
[legend]

List of all members.

Public Member Functions

 UnaryExprOrTypeTraitExpr (UnaryExprOrTypeTrait ExprKind, TypeSourceInfo *TInfo, QualType resultType, SourceLocation op, SourceLocation rp)
 UnaryExprOrTypeTraitExpr (UnaryExprOrTypeTrait ExprKind, Expr *E, QualType resultType, SourceLocation op, SourceLocation rp)
 UnaryExprOrTypeTraitExpr (EmptyShell Empty)
 Construct an empty sizeof/alignof expression.
UnaryExprOrTypeTrait getKind () const
void setKind (UnaryExprOrTypeTrait K)
bool isArgumentType () const
QualType getArgumentType () const
TypeSourceInfogetArgumentTypeInfo () const
ExprgetArgumentExpr ()
const ExprgetArgumentExpr () const
void setArgument (Expr *E)
void setArgument (TypeSourceInfo *TInfo)
QualType getTypeOfArgument () const
SourceLocation getOperatorLoc () const
void setOperatorLoc (SourceLocation L)
SourceLocation getRParenLoc () const
void setRParenLoc (SourceLocation L)
SourceRange getSourceRange () const LLVM_READONLY
child_range children ()

Static Public Member Functions

static bool classof (const Stmt *T)
static bool classof (const UnaryExprOrTypeTraitExpr *)

Detailed Description

UnaryExprOrTypeTraitExpr - expression with either a type or (unevaluated) expression operand. Used for sizeof/alignof (C99 6.5.3.4) and vec_step (OpenCL 1.1 6.11.12).

Definition at line 1835 of file Expr.h.


Constructor & Destructor Documentation

clang::UnaryExprOrTypeTraitExpr::UnaryExprOrTypeTraitExpr ( UnaryExprOrTypeTrait  ExprKind,
TypeSourceInfo TInfo,
QualType  resultType,
SourceLocation  op,
SourceLocation  rp 
) [inline]

Definition at line 1843 of file Expr.h.

References clang::Stmt::UnaryExprOrTypeTraitExprBits.

clang::UnaryExprOrTypeTraitExpr::UnaryExprOrTypeTraitExpr ( UnaryExprOrTypeTrait  ExprKind,
Expr E,
QualType  resultType,
SourceLocation  op,
SourceLocation  rp 
) [inline]

Definition at line 1858 of file Expr.h.

References clang::Stmt::UnaryExprOrTypeTraitExprBits.

clang::UnaryExprOrTypeTraitExpr::UnaryExprOrTypeTraitExpr ( EmptyShell  Empty) [inline, explicit]

Construct an empty sizeof/alignof expression.

Definition at line 1874 of file Expr.h.


Member Function Documentation

Stmt::child_range UnaryExprOrTypeTraitExpr::children ( )

Reimplemented from clang::Stmt.

Definition at line 3385 of file Expr.cpp.

References getArgumentType(), and isArgumentType().

static bool clang::UnaryExprOrTypeTraitExpr::classof ( const Stmt T) [inline, static]

Reimplemented from clang::Expr.

Definition at line 1923 of file Expr.h.

References clang::Stmt::getStmtClass().

static bool clang::UnaryExprOrTypeTraitExpr::classof ( const UnaryExprOrTypeTraitExpr ) [inline, static]

Definition at line 1926 of file Expr.h.

Expr* clang::UnaryExprOrTypeTraitExpr::getArgumentExpr ( ) [inline]
const Expr* clang::UnaryExprOrTypeTraitExpr::getArgumentExpr ( ) const [inline]

Definition at line 1894 of file Expr.h.

References getArgumentExpr().

QualType clang::UnaryExprOrTypeTraitExpr::getArgumentType ( ) const [inline]

Definition at line 1883 of file Expr.h.

References getArgumentTypeInfo(), and clang::TypeSourceInfo::getType().

Referenced by children(), and getTypeOfArgument().

TypeSourceInfo* clang::UnaryExprOrTypeTraitExpr::getArgumentTypeInfo ( ) const [inline]

Definition at line 1886 of file Expr.h.

References isArgumentType().

Referenced by getArgumentType(), and clang::ASTNodeImporter::VisitUnaryExprOrTypeTraitExpr().

UnaryExprOrTypeTrait clang::UnaryExprOrTypeTraitExpr::getKind ( ) const [inline]
SourceLocation clang::UnaryExprOrTypeTraitExpr::getOperatorLoc ( ) const [inline]

Definition at line 1913 of file Expr.h.

Referenced by clang::ASTNodeImporter::VisitUnaryExprOrTypeTraitExpr().

SourceLocation clang::UnaryExprOrTypeTraitExpr::getRParenLoc ( ) const [inline]

Definition at line 1916 of file Expr.h.

Referenced by clang::ASTNodeImporter::VisitUnaryExprOrTypeTraitExpr().

SourceRange clang::UnaryExprOrTypeTraitExpr::getSourceRange ( ) const [inline]

SourceLocation tokens are not useful in isolation - they are low level value objects created/interpreted by SourceManager. We assume AST clients will have a pointer to the respective SourceManager.

Reimplemented from clang::Stmt.

Definition at line 1919 of file Expr.h.

QualType clang::UnaryExprOrTypeTraitExpr::getTypeOfArgument ( ) const [inline]

Gets the argument type, or the type of the argument expression, whichever is appropriate.

Definition at line 1909 of file Expr.h.

References getArgumentExpr(), getArgumentType(), clang::Expr::getType(), and isArgumentType().

Referenced by CheckICE().

bool clang::UnaryExprOrTypeTraitExpr::isArgumentType ( ) const [inline]
void clang::UnaryExprOrTypeTraitExpr::setArgument ( Expr E) [inline]

Definition at line 1898 of file Expr.h.

References clang::Stmt::UnaryExprOrTypeTraitExprBits.

void clang::UnaryExprOrTypeTraitExpr::setArgument ( TypeSourceInfo TInfo) [inline]

Definition at line 1902 of file Expr.h.

References clang::Stmt::UnaryExprOrTypeTraitExprBits.

void clang::UnaryExprOrTypeTraitExpr::setKind ( UnaryExprOrTypeTrait  K) [inline]

Definition at line 1880 of file Expr.h.

References clang::Stmt::UnaryExprOrTypeTraitExprBits.

void clang::UnaryExprOrTypeTraitExpr::setOperatorLoc ( SourceLocation  L) [inline]

Definition at line 1914 of file Expr.h.

void clang::UnaryExprOrTypeTraitExpr::setRParenLoc ( SourceLocation  L) [inline]

Definition at line 1917 of file Expr.h.


Member Data Documentation

Definition at line 1838 of file Expr.h.

Definition at line 1837 of file Expr.h.


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