clang API Documentation
Defines the clang::Expr interface and subclasses for C++ expressions. More...
#include "clang/AST/Decl.h"
#include "clang/AST/Expr.h"
#include "clang/AST/TemplateBase.h"
#include "clang/AST/UnresolvedSet.h"
#include "clang/Basic/ExpressionTraits.h"
#include "clang/AST/LambdaCapture.h"
#include "clang/Basic/TypeTraits.h"
#include "llvm/Support/Compiler.h"
Go to the source code of this file.
Classes | |
class | clang::CXXOperatorCallExpr |
A call to an overloaded operator written using operator syntax. More... | |
class | clang::CXXMemberCallExpr |
class | clang::CUDAKernelCallExpr |
Represents a call to a CUDA kernel function. More... | |
class | clang::CXXNamedCastExpr |
Abstract class common to all of the C++ "named"/"keyword" casts. More... | |
class | clang::CXXStaticCastExpr |
A C++ static_cast expression (C++ [expr.static.cast]). More... | |
class | clang::CXXDynamicCastExpr |
A C++ dynamic_cast expression (C++ [expr.dynamic.cast]). More... | |
class | clang::CXXReinterpretCastExpr |
A C++ reinterpret_cast expression (C++ [expr.reinterpret.cast]). More... | |
class | clang::CXXConstCastExpr |
A C++ const_cast expression (C++ [expr.const.cast]). More... | |
class | clang::UserDefinedLiteral |
A call to a literal operator (C++11 [over.literal]) written as a user-defined literal (C++11 [lit.ext]). More... | |
class | clang::CXXBoolLiteralExpr |
A boolean literal, per ([C++ lex.bool] Boolean literals). More... | |
class | clang::CXXNullPtrLiteralExpr |
The null pointer literal (C++11 [lex.nullptr]) More... | |
class | clang::CXXStdInitializerListExpr |
Implicit construction of a std::initializer_list<T> object from an array temporary within list-initialization (C++11 [dcl.init.list]p5). More... | |
class | clang::CXXTypeidExpr |
class | clang::MSPropertyRefExpr |
A member reference to an MSPropertyDecl. More... | |
class | clang::CXXUuidofExpr |
class | clang::CXXThisExpr |
Represents the this expression in C++. More... | |
class | clang::CXXThrowExpr |
A C++ throw-expression (C++ [except.throw]). More... | |
class | clang::CXXDefaultArgExpr |
A default argument (C++ [dcl.fct.default]). More... | |
class | clang::CXXDefaultInitExpr |
A use of a default initializer in a constructor or in aggregate initialization. More... | |
class | clang::CXXTemporary |
Represents a C++ temporary. More... | |
class | clang::CXXBindTemporaryExpr |
Represents binding an expression to a temporary. More... | |
class | clang::CXXConstructExpr |
Represents a call to a C++ constructor. More... | |
class | clang::CXXFunctionalCastExpr |
Represents an explicit C++ type conversion that uses "functional" notation (C++ [expr.type.conv]). More... | |
class | clang::CXXTemporaryObjectExpr |
Represents a C++ functional cast expression that builds a temporary object. More... | |
class | clang::LambdaExpr |
A C++ lambda expression, which produces a function object (of unspecified type) that can be invoked later. More... | |
class | clang::CXXScalarValueInitExpr |
class | clang::CXXNewExpr |
Represents a new-expression for memory allocation and constructor calls, e.g: "new CXXNewExpr(foo)". More... | |
class | clang::CXXDeleteExpr |
Represents a delete expression for memory deallocation and destructor calls, e.g. "delete[] pArray". More... | |
class | clang::PseudoDestructorTypeStorage |
Stores the type being destroyed by a pseudo-destructor expression. More... | |
class | clang::CXXPseudoDestructorExpr |
Represents a C++ pseudo-destructor (C++ [expr.pseudo]). More... | |
class | clang::TypeTraitExpr |
A type trait used in the implementation of various C++11 and Library TR1 trait templates. More... | |
class | clang::ArrayTypeTraitExpr |
An Embarcadero array type trait, as used in the implementation of __array_rank and __array_extent. More... | |
class | clang::ExpressionTraitExpr |
An expression trait intrinsic. More... | |
class | clang::OverloadExpr |
A reference to an overloaded function set, either an UnresolvedLookupExpr or an UnresolvedMemberExpr . More... | |
struct | clang::OverloadExpr::FindResult |
class | clang::UnresolvedLookupExpr |
A reference to a name which we were able to look up during parsing but could not resolve to a specific declaration. More... | |
class | clang::DependentScopeDeclRefExpr |
A qualified reference to a name whose declaration cannot yet be resolved. More... | |
class | clang::ExprWithCleanups |
class | clang::CXXUnresolvedConstructExpr |
Describes an explicit type conversion that uses functional notion but could not be resolved because one or more arguments are type-dependent. More... | |
class | clang::CXXDependentScopeMemberExpr |
Represents a C++ member access expression where the actual member referenced could not be resolved because the base expression or the member name was dependent. More... | |
class | clang::UnresolvedMemberExpr |
Represents a C++ member access expression for which lookup produced a set of overloaded functions. More... | |
class | clang::CXXNoexceptExpr |
Represents a C++11 noexcept expression (C++ [expr.unary.noexcept]). More... | |
class | clang::PackExpansionExpr |
Represents a C++11 pack expansion that produces a sequence of expressions. More... | |
class | clang::SizeOfPackExpr |
Represents an expression that computes the length of a parameter pack. More... | |
class | clang::SubstNonTypeTemplateParmExpr |
Represents a reference to a non-type template parameter that has been substituted with a template argument. More... | |
class | clang::SubstNonTypeTemplateParmPackExpr |
Represents a reference to a non-type template parameter pack that has been substituted with a non-template argument pack. More... | |
class | clang::FunctionParmPackExpr |
Represents a reference to a function parameter pack that has been substituted but not yet expanded. More... | |
class | clang::MaterializeTemporaryExpr |
Represents a prvalue temporary that is written into memory so that a reference can bind to it. More... | |
struct | clang::MaterializeTemporaryExpr::ExtraState |
class | clang::CXXFoldExpr |
Represents a folding of a pack over an operator. More... | |
Namespaces | |
namespace | clang |
Defines the clang::Expr interface and subclasses for C++ expressions.
Definition in file ExprCXX.h.