class BinaryConditionalOperator

Declaration

class BinaryConditionalOperator : public AbstractConditionalOperator { /* full declaration omitted */ };

Description

BinaryConditionalOperator - The GNU extension to the conditional operator which allows the middle operand to be omitted. This is a different expression kind on the assumption that almost every client ends up needing to know that these are different.

Declared at: clang/include/clang/AST/Expr.h:4207

Inherits from: AbstractConditionalOperator

Member Variables

private clang::Stmt* [4] SubExprs
- the common condition/left-hand-side expression, which will be evaluated as the opaque value - the condition, expressed in terms of the opaque value - the left-hand-side, expressed in terms of the opaque value - the right-hand-side
private clang::OpaqueValueExpr* OpaqueValue

Inherited from Stmt:

protected

Method Overview

  • public BinaryConditionalOperator(clang::Expr * common, clang::OpaqueValueExpr * opaqueValue, clang::Expr * cond, clang::Expr * lhs, clang::Expr * rhs, clang::SourceLocation qloc, clang::SourceLocation cloc, clang::QualType t, clang::ExprValueKind VK, clang::ExprObjectKind OK)
  • public BinaryConditionalOperator(clang::Stmt::EmptyShell Empty)
  • public clang::Stmt::child_range children()
  • public clang::Stmt::const_child_range children() const
  • public static bool classof(const clang::Stmt * T)
  • public clang::SourceLocation getBeginLoc() const
  • public clang::Expr * getCommon() const
  • public clang::Expr * getCond() const
  • public clang::SourceLocation getEndLoc() const
  • public clang::Expr * getFalseExpr() const
  • public clang::OpaqueValueExpr * getOpaqueValue() const
  • public clang::Expr * getTrueExpr() const

Inherited from AbstractConditionalOperator:

Inherited from Expr:

Inherited from ValueStmt:

Inherited from Stmt:

Methods

BinaryConditionalOperator(
    clang::Expr* common,
    clang::OpaqueValueExpr* opaqueValue,
    clang::Expr* cond,
    clang::Expr* lhs,
    clang::Expr* rhs,
    clang::SourceLocation qloc,
    clang::SourceLocation cloc,
    clang::QualType t,
    clang::ExprValueKind VK,
    clang::ExprObjectKind OK)

Declared at: clang/include/clang/AST/Expr.h:4220

Parameters

clang::Expr* common
clang::OpaqueValueExpr* opaqueValue
clang::Expr* cond
clang::Expr* lhs
clang::Expr* rhs
clang::SourceLocation qloc
clang::SourceLocation cloc
clang::QualType t
clang::ExprValueKind VK
clang::ExprObjectKind OK

BinaryConditionalOperator(
    clang::Stmt::EmptyShell Empty)

Description

Build an empty conditional operator.

Declared at: clang/include/clang/AST/Expr.h:4236

Parameters

clang::Stmt::EmptyShell Empty

clang::Stmt::child_range children()

Declared at: clang/include/clang/AST/Expr.h:4277

clang::Stmt::const_child_range children() const

Declared at: clang/include/clang/AST/Expr.h:4280

static bool classof(const clang::Stmt* T)

Declared at: clang/include/clang/AST/Expr.h:4272

Parameters

const clang::Stmt* T

clang::SourceLocation getBeginLoc() const

Declared at: clang/include/clang/AST/Expr.h:4265

clang::Expr* getCommon() const

Description

getCommon - Return the common expression, written to the left of the condition. The opaque value will be bound to the result of this expression.

Declared at: clang/include/clang/AST/Expr.h:4242

clang::Expr* getCond() const

Description

getCond - Return the condition expression; this is defined in terms of the opaque value.

Declared at: clang/include/clang/AST/Expr.h:4249

clang::SourceLocation getEndLoc() const

Declared at: clang/include/clang/AST/Expr.h:4268

clang::Expr* getFalseExpr() const

Description

getFalseExpr - Return the subexpression which will be evaluated if the condnition evaluates to false; this is defined in terms of the opaque value.

Declared at: clang/include/clang/AST/Expr.h:4261

clang::OpaqueValueExpr* getOpaqueValue() const

Description

getOpaqueValue - Return the opaque value placeholder.

Declared at: clang/include/clang/AST/Expr.h:4245

clang::Expr* getTrueExpr() const

Description

getTrueExpr - Return the subexpression which will be evaluated if the condition evaluates to true; this is defined in terms of the opaque value.

Declared at: clang/include/clang/AST/Expr.h:4254