class OMPArrayShapingExpr

Declaration

class OMPArrayShapingExpr : public Expr, private TrailingObjects { /* full declaration omitted */ };

Description

An explicit cast in C or a C-style cast in C++, which uses the syntax ([s1][s2]...[sn])expr. For example: @c ([3][3])f.

Declared at: clang/include/clang/AST/ExprOpenMP.h:146

Inherits from: Expr, TrailingObjects

Member Variables

private clang::SourceLocation LPLoc
Base node.
private clang::SourceLocation RPLoc
The location of the left paren
private unsigned int NumDims = 0
The location of the right paren

Inherited from Stmt:

protected

Method Overview

  • public static clang::OMPArrayShapingExpr * Create(const clang::ASTContext & Context, clang::QualType T, clang::Expr * Op, clang::SourceLocation L, clang::SourceLocation R, ArrayRef<clang::Expr *> Dims, ArrayRef<clang::SourceRange> BracketRanges)
  • public static clang::OMPArrayShapingExpr * CreateEmpty(const clang::ASTContext & Context, unsigned int NumDims)
  • private OMPArrayShapingExpr(clang::Stmt::EmptyShell Shell, unsigned int NumDims)
  • private OMPArrayShapingExpr(clang::QualType ExprTy, clang::Expr * Op, clang::SourceLocation L, clang::SourceLocation R, ArrayRef<clang::Expr *> Dims)
  • public clang::Stmt::const_child_range children() const
  • public clang::Stmt::child_range children()
  • public static bool classof(const clang::Stmt * T)
  • public clang::Expr * getBase()
  • public const clang::Expr * getBase() const
  • public clang::SourceLocation getBeginLoc() const
  • public ArrayRef<clang::SourceRange> getBracketsRanges() const
  • public ArrayRef<clang::Expr *> getDimensions() const
  • public clang::SourceLocation getEndLoc() const
  • public clang::SourceLocation getLParenLoc() const
  • public clang::SourceLocation getRParenLoc() const
  • private unsigned int numTrailingObjects(OverloadToken<clang::SourceRange>) const
  • private unsigned int numTrailingObjects(OverloadToken<clang::Expr *>) const
  • private void setBase(clang::Expr * Op)
  • private void setBracketsRanges(ArrayRef<clang::SourceRange> BR)
  • private void setDimensions(ArrayRef<clang::Expr *> Dims)
  • public void setLParenLoc(clang::SourceLocation L)
  • public void setRParenLoc(clang::SourceLocation L)

Inherited from Expr:

Inherited from ValueStmt:

Inherited from Stmt:

Methods

static clang::OMPArrayShapingExpr* Create(
    const clang::ASTContext& Context,
    clang::QualType T,
    clang::Expr* Op,
    clang::SourceLocation L,
    clang::SourceLocation R,
    ArrayRef<clang::Expr*> Dims,
    ArrayRef<clang::SourceRange> BracketRanges)

Declared at: clang/include/clang/AST/ExprOpenMP.h:184

Parameters

const clang::ASTContext& Context
clang::QualType T
clang::Expr* Op
clang::SourceLocation L
clang::SourceLocation R
ArrayRef<clang::Expr*> Dims
ArrayRef<clang::SourceRange> BracketRanges

static clang::OMPArrayShapingExpr* CreateEmpty(
    const clang::ASTContext& Context,
    unsigned int NumDims)

Declared at: clang/include/clang/AST/ExprOpenMP.h:189

Parameters

const clang::ASTContext& Context
unsigned int NumDims

OMPArrayShapingExpr(clang::Stmt::EmptyShell Shell,
                    unsigned int NumDims)

Description

Construct an empty expression.

Declared at: clang/include/clang/AST/ExprOpenMP.h:162

Parameters

clang::Stmt::EmptyShell Shell
unsigned int NumDims

OMPArrayShapingExpr(clang::QualType ExprTy,
                    clang::Expr* Op,
                    clang::SourceLocation L,
                    clang::SourceLocation R,
                    ArrayRef<clang::Expr*> Dims)

Description

Construct full expression.

Declared at: clang/include/clang/AST/ExprOpenMP.h:158

Parameters

clang::QualType ExprTy
clang::Expr* Op
clang::SourceLocation L
clang::SourceLocation R
ArrayRef<clang::Expr*> Dims

clang::Stmt::const_child_range children() const

Declared at: clang/include/clang/AST/ExprOpenMP.h:226

clang::Stmt::child_range children()

Declared at: clang/include/clang/AST/ExprOpenMP.h:222

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

Declared at: clang/include/clang/AST/ExprOpenMP.h:217

Parameters

const clang::Stmt* T

clang::Expr* getBase()

Description

Fetches base expression of array shaping expression.

Declared at: clang/include/clang/AST/ExprOpenMP.h:214

const clang::Expr* getBase() const

Declared at: clang/include/clang/AST/ExprOpenMP.h:215

clang::SourceLocation getBeginLoc() const

Declared at: clang/include/clang/AST/ExprOpenMP.h:198

ArrayRef<clang::SourceRange> getBracketsRanges()
    const

Description

Fetches source ranges for the brackets os the array shaping expression.

Declared at: clang/include/clang/AST/ExprOpenMP.h:209

ArrayRef<clang::Expr*> getDimensions() const

Description

Fetches the dimensions for array shaping expression.

Declared at: clang/include/clang/AST/ExprOpenMP.h:204

clang::SourceLocation getEndLoc() const

Declared at: clang/include/clang/AST/ExprOpenMP.h:199

clang::SourceLocation getLParenLoc() const

Declared at: clang/include/clang/AST/ExprOpenMP.h:192

clang::SourceLocation getRParenLoc() const

Declared at: clang/include/clang/AST/ExprOpenMP.h:195

unsigned int numTrailingObjects(
    OverloadToken<clang::SourceRange>) const

Declared at: clang/include/clang/AST/ExprOpenMP.h:179

Parameters

OverloadToken<clang::SourceRange>

unsigned int numTrailingObjects(
    OverloadToken<clang::Expr*>) const

Declared at: clang/include/clang/AST/ExprOpenMP.h:174

Parameters

OverloadToken<clang::Expr*>

void setBase(clang::Expr* Op)

Description

Sets the base expression for array shaping operation.

Declared at: clang/include/clang/AST/ExprOpenMP.h:169

Parameters

clang::Expr* Op

void setBracketsRanges(
    ArrayRef<clang::SourceRange> BR)

Description

Sets source ranges for the brackets in the array shaping operation.

Declared at: clang/include/clang/AST/ExprOpenMP.h:172

Parameters

ArrayRef<clang::SourceRange> BR

void setDimensions(ArrayRef<clang::Expr*> Dims)

Description

Sets the dimensions for the array shaping.

Declared at: clang/include/clang/AST/ExprOpenMP.h:166

Parameters

ArrayRef<clang::Expr*> Dims

void setLParenLoc(clang::SourceLocation L)

Declared at: clang/include/clang/AST/ExprOpenMP.h:193

Parameters

clang::SourceLocation L

void setRParenLoc(clang::SourceLocation L)

Declared at: clang/include/clang/AST/ExprOpenMP.h:196

Parameters

clang::SourceLocation L