Intel SPMD Program Compiler  1.12.0
Public Member Functions | Static Public Member Functions | Public Attributes | List of all members
DeleteStmt Class Reference

#include <stmt.h>

Inheritance diagram for DeleteStmt:
Inheritance graph
Collaboration diagram for DeleteStmt:
Collaboration graph

Public Member Functions

 DeleteStmt (Expr *e, SourcePos p)
void EmitCode (FunctionEmitContext *ctx) const
void Print (int indent) const
StmtTypeCheck ()
int EstimateCost () const
- Public Member Functions inherited from Stmt
 Stmt (SourcePos p, unsigned scid)
virtual StmtOptimize ()
- Public Member Functions inherited from ASTNode
 ASTNode (SourcePos p, unsigned scid)
virtual ~ASTNode ()
unsigned getValueID () const

Static Public Member Functions

static bool classof (DeleteStmt const *)
static bool classof (ASTNode const *N)
- Static Public Member Functions inherited from Stmt
static bool classof (Stmt const *)
static bool classof (ASTNode const *N)
- Static Public Member Functions inherited from ASTNode
static bool classof (ASTNode const *)

Public Attributes

- Public Attributes inherited from ASTNode
SourcePos pos

Additional Inherited Members

- Public Types inherited from ASTNode
enum  ASTNodeTy {
  AddressOfExprID, AssignExprID, BinaryExprID, ConstExprID,
  DerefExprID, PtrDerefExprID, RefDerefExprID, ExprListID,
  FunctionCallExprID, FunctionSymbolExprID, IndexExprID, StructMemberExprID,
  VectorMemberExprID, NewExprID, NullPointerExprID, ReferenceExprID,
  SelectExprID, SizeOfExprID, SymbolExprID, SyncExprID,
  TypeCastExprID, UnaryExprID, MaxExprID, AssertStmtID,
  BreakStmtID, CaseStmtID, ContinueStmtID, DeclStmtID,
  DefaultStmtID, DeleteStmtID, DoStmtID, ExprStmtID,
  ForeachActiveStmtID, ForeachStmtID, ForeachUniqueStmtID, ForStmtID,
  GotoStmtID, IfStmtID, LabeledStmtID, PrintStmtID,
  ReturnStmtID, StmtListID, SwitchStmtID, UnmaskedStmtID

Detailed Description

Representation of a delete statement in the program.

Definition at line 520 of file stmt.h.

Constructor & Destructor Documentation

◆ DeleteStmt()

DeleteStmt::DeleteStmt ( Expr e,
SourcePos  p 

Definition at line 3157 of file stmt.cpp.

References expr.

Member Function Documentation

◆ classof() [1/2]

static bool DeleteStmt::classof ( DeleteStmt const *  )

Definition at line 524 of file stmt.h.

◆ classof() [2/2]

static bool DeleteStmt::classof ( ASTNode const *  N)

◆ EmitCode()

void DeleteStmt::EmitCode ( FunctionEmitContext ctx) const

◆ EstimateCost()

int DeleteStmt::EstimateCost ( ) const

Estimate the execution cost of the node (not including the cost of the children. The value returned should be based on the COST_* enumerant values defined in ispc.h.

Implements ASTNode.

Definition at line 3225 of file stmt.cpp.

References COST_DELETE.

◆ Print()

void DeleteStmt::Print ( int  indent) const

Print a representation of the statement (and any children AST nodes) to standard output. This method is used for debuggins.

Implements Stmt.

Definition at line 3210 of file stmt.cpp.

◆ TypeCheck()

Stmt * DeleteStmt::TypeCheck ( )

Type checking should be performed by the node when this method is called. In the event of an error, a NULL value may be returned. As with ASTNode::Optimize(), the caller should store the returned pointer in place of the original ASTNode *.

Implements Stmt.

Definition at line 3212 of file stmt.cpp.

References Error(), expr, Type::GetString(), Expr::GetType(), and ASTNode::pos.

Member Data Documentation

◆ expr

Expr* DeleteStmt::expr

Expression that gives the pointer value to be deleted.

Definition at line 534 of file stmt.h.

Referenced by DeleteStmt(), EmitCode(), TypeCheck(), and WalkAST().

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