class OMPChildren

Declaration

class OMPChildren : private TrailingObjects { /* full declaration omitted */ };

Description

Contains data for OpenMP directives: clauses, children expressions/statements (helpers for codegen) and associated statement, if any.

Declared at: clang/include/clang/AST/OpenMPClause.h:8893

Inherits from: TrailingObjects

Member Variables

private unsigned int NumClauses = 0
Numbers of clauses.
private unsigned int NumChildren = 0
Number of child expressions/stmts.
private bool HasAssociatedStmt = false
true if the directive has associated statement.

Method Overview

  • private static clang::OMPChildren * Create(void * Mem, ArrayRef<clang::OMPClause *> Clauses)
  • private static clang::OMPChildren * Create(void * Mem, ArrayRef<clang::OMPClause *> Clauses, clang::Stmt * S, unsigned int NumChildren = 0)
  • private static clang::OMPChildren * CreateEmpty(void * Mem, unsigned int NumClauses, bool HasAssociatedStmt = false, unsigned int NumChildren = 0)
  • private OMPChildren()
  • private OMPChildren(unsigned int NumClauses, unsigned int NumChildren, bool HasAssociatedStmt)
  • public clang::Stmt * getAssociatedStmt()
  • public const clang::Stmt * getAssociatedStmt() const
  • public Stmt::child_range getAssociatedStmtAsRange()
  • public const clang::CapturedStmt * getCapturedStmt(clang::OpenMPDirectiveKind RegionKind, ArrayRef<clang::OpenMPDirectiveKind> CaptureRegions) const
  • public ArrayRef<clang::Stmt *> getChildren() const
  • public MutableArrayRef<clang::Stmt *> getChildren()
  • public MutableArrayRef<clang::OMPClause *> getClauses()
  • public ArrayRef<clang::OMPClause *> getClauses() const
  • public clang::CapturedStmt * getInnermostCapturedStmt(ArrayRef<clang::OpenMPDirectiveKind> CaptureRegions)
  • public const clang::CapturedStmt * getInnermostCapturedStmt(ArrayRef<clang::OpenMPDirectiveKind> CaptureRegions) const
  • public unsigned int getNumChildren() const
  • public unsigned int getNumClauses() const
  • public const clang::Stmt * getRawStmt() const
  • public clang::Stmt * getRawStmt()
  • public bool hasAssociatedStmt() const
  • private size_t numTrailingObjects(OverloadToken<clang::OMPClause *>) const
  • public void setAssociatedStmt(clang::Stmt * S)
  • public void setChildren(ArrayRef<clang::Stmt *> Children)
  • public void setClauses(ArrayRef<clang::OMPClause *> Clauses)
  • private static size_t size(unsigned int NumClauses, bool HasAssociatedStmt, unsigned int NumChildren)

Methods

static clang::OMPChildren* Create(
    void* Mem,
    ArrayRef<clang::OMPClause*> Clauses)

Declared at: clang/include/clang/AST/OpenMPClause.h:8922

Parameters

void* Mem
ArrayRef<clang::OMPClause*> Clauses

static clang::OMPChildren* Create(
    void* Mem,
    ArrayRef<clang::OMPClause*> Clauses,
    clang::Stmt* S,
    unsigned int NumChildren = 0)

Declared at: clang/include/clang/AST/OpenMPClause.h:8923

Parameters

void* Mem
ArrayRef<clang::OMPClause*> Clauses
clang::Stmt* S
unsigned int NumChildren = 0

static clang::OMPChildren* CreateEmpty(
    void* Mem,
    unsigned int NumClauses,
    bool HasAssociatedStmt = false,
    unsigned int NumChildren = 0)

Declared at: clang/include/clang/AST/OpenMPClause.h:8925

Parameters

void* Mem
unsigned int NumClauses
bool HasAssociatedStmt = false
unsigned int NumChildren = 0

OMPChildren()

Declared at: clang/include/clang/AST/OpenMPClause.h:8913

OMPChildren(unsigned int NumClauses,
            unsigned int NumChildren,
            bool HasAssociatedStmt)

Declared at: clang/include/clang/AST/OpenMPClause.h:8915

Parameters

unsigned int NumClauses
unsigned int NumChildren
bool HasAssociatedStmt

clang::Stmt* getAssociatedStmt()

Declared at: clang/include/clang/AST/OpenMPClause.h:8951

const clang::Stmt* getAssociatedStmt() const

Description

Returns statement associated with the directive.

Declared at: clang/include/clang/AST/OpenMPClause.h:8948

Stmt::child_range getAssociatedStmtAsRange()

Declared at: clang/include/clang/AST/OpenMPClause.h:9026

const clang::CapturedStmt* getCapturedStmt(
    clang::OpenMPDirectiveKind RegionKind,
    ArrayRef<clang::OpenMPDirectiveKind>
        CaptureRegions) const

Description

Returns the captured statement associated with the component region within the (combined) directive.

Declared at: clang/include/clang/AST/OpenMPClause.h:8971

Parameters

clang::OpenMPDirectiveKind RegionKind
Component region kind.
ArrayRef<clang::OpenMPDirectiveKind> CaptureRegions

ArrayRef<clang::Stmt*> getChildren() const

Declared at: clang/include/clang/AST/OpenMPClause.h:9005

MutableArrayRef<clang::Stmt*> getChildren()

Declared at: clang/include/clang/AST/OpenMPClause.h:9004

MutableArrayRef<clang::OMPClause*> getClauses()

Description

Get the clauses storage.

Declared at: clang/include/clang/AST/OpenMPClause.h:8958

ArrayRef<clang::OMPClause*> getClauses() const

Declared at: clang/include/clang/AST/OpenMPClause.h:8962

clang::CapturedStmt* getInnermostCapturedStmt(
    ArrayRef<clang::OpenMPDirectiveKind>
        CaptureRegions)

Description

Get innermost captured statement for the construct.

Declared at: clang/include/clang/AST/OpenMPClause.h:8988

Parameters

ArrayRef<clang::OpenMPDirectiveKind> CaptureRegions

const clang::CapturedStmt*
getInnermostCapturedStmt(
    ArrayRef<clang::OpenMPDirectiveKind>
        CaptureRegions) const

Declared at: clang/include/clang/AST/OpenMPClause.h:8999

Parameters

ArrayRef<clang::OpenMPDirectiveKind> CaptureRegions

unsigned int getNumChildren() const

Declared at: clang/include/clang/AST/OpenMPClause.h:8931

unsigned int getNumClauses() const

Declared at: clang/include/clang/AST/OpenMPClause.h:8930

const clang::Stmt* getRawStmt() const

Declared at: clang/include/clang/AST/OpenMPClause.h:9022

clang::Stmt* getRawStmt()

Declared at: clang/include/clang/AST/OpenMPClause.h:9009

bool hasAssociatedStmt() const

Declared at: clang/include/clang/AST/OpenMPClause.h:8932

size_t numTrailingObjects(
    OverloadToken<clang::OMPClause*>) const

Description

Define the sizes of each trailing object array except the last one. This is required for TrailingObjects to work properly.

Declared at: clang/include/clang/AST/OpenMPClause.h:8909

Parameters

OverloadToken<clang::OMPClause*>

void setAssociatedStmt(clang::Stmt* S)

Description

Set associated statement.

Declared at: clang/include/clang/AST/OpenMPClause.h:8935

Parameters

clang::Stmt* S

void setChildren(ArrayRef<clang::Stmt*> Children)

Declared at: clang/include/clang/AST/OpenMPClause.h:8939

Parameters

ArrayRef<clang::Stmt*> Children

void setClauses(
    ArrayRef<clang::OMPClause*> Clauses)

Description

Sets the list of variables for this clause.

Declared at: clang/include/clang/AST/OpenMPClause.h:8945

Parameters

ArrayRef<clang::OMPClause*> Clauses
The list of clauses for the directive.

static size_t size(unsigned int NumClauses,
                   bool HasAssociatedStmt,
                   unsigned int NumChildren)

Declared at: clang/include/clang/AST/OpenMPClause.h:8919

Parameters

unsigned int NumClauses
bool HasAssociatedStmt
unsigned int NumChildren