clang API Documentation

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

#include <Expr.h>

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

List of all members.

Public Member Functions

 CompoundAssignOperator (Expr *lhs, Expr *rhs, Opcode opc, QualType ResType, ExprValueKind VK, ExprObjectKind OK, QualType CompLHSType, QualType CompResultType, SourceLocation OpLoc)
 CompoundAssignOperator (EmptyShell Empty)
 Build an empty compound assignment operator expression.
QualType getComputationLHSType () const
void setComputationLHSType (QualType T)
QualType getComputationResultType () const
void setComputationResultType (QualType T)

Static Public Member Functions

static bool classof (const CompoundAssignOperator *)
static bool classof (const Stmt *S)

Detailed Description

CompoundAssignOperator - For compound assignments (e.g. +=), we keep track of the type the operation is performed in. Due to the semantics of these operators, the operands are promoted, the arithmetic performed, an implicit conversion back to the result type done, then the assignment takes place. This captures the intermediate type which the computation is done in.

Definition at line 2916 of file Expr.h.


Constructor & Destructor Documentation

clang::CompoundAssignOperator::CompoundAssignOperator ( Expr lhs,
Expr rhs,
Opcode  opc,
QualType  ResType,
ExprValueKind  VK,
ExprObjectKind  OK,
QualType  CompLHSType,
QualType  CompResultType,
SourceLocation  OpLoc 
) [inline]

Definition at line 2920 of file Expr.h.

References clang::BinaryOperator::isCompoundAssignmentOp().

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

Build an empty compound assignment operator expression.

Definition at line 2932 of file Expr.h.


Member Function Documentation

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

Definition at line 2944 of file Expr.h.

static bool clang::CompoundAssignOperator::classof ( const Stmt S) [inline, static]

Reimplemented from clang::BinaryOperator.

Definition at line 2945 of file Expr.h.

References clang::Stmt::getStmtClass().

QualType clang::CompoundAssignOperator::getComputationLHSType ( ) const [inline]

Definition at line 2938 of file Expr.h.

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

QualType clang::CompoundAssignOperator::getComputationResultType ( ) const [inline]

Definition at line 2941 of file Expr.h.

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

void clang::CompoundAssignOperator::setComputationLHSType ( QualType  T) [inline]

Definition at line 2939 of file Expr.h.

void clang::CompoundAssignOperator::setComputationResultType ( QualType  T) [inline]

Definition at line 2942 of file Expr.h.


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