Fan

 

class

compiler::ExprStmt

sys::Obj
  compiler::Node
    compiler::Stmt
      compiler::ExprStmt

ExprStmt is a statement with a stand along expression such as an assignment or method call.

Slots

exprSource

Expr expr

isDefiniteAssignSource

override Bool isDefiniteAssign(|Expr -> Bool| f)

Check for definite assignment where the given function returns true for the LHS of an assignment in all code paths.

isExitSource

override Bool isExit()

Overrides compiler::Stmt.isExit

Doc inherited from compiler::Stmt.isExit

Does this statement always cause us to exit the method (or does it cause us to loop forever without a break to the next statement)

makeSource

new make(Expr expr)

printSource

override Void print(AstWriter out)

Overrides compiler::Node.print

Doc inherited from compiler::Node.print

Pretty print this node and it's descendants.

printOptSource

Void printOpt(AstWriter out, Bool nl := true)

toStrSource

override Str toStr()

Overrides sys::Obj.toStr

Doc inherited from sys::Obj.toStr

Return a string representation of this object.

walkChildrenSource

override Void walkChildren(Visitor v, VisitDepth depth)