Fan

 

class

compiler::WithSubExpr

sys::Obj
  compiler::Node
    compiler::Expr
      compiler::WithSubExpr

WithSubExpr wraps each sub-expr within a with-block.

Slots

addSource

CMethod? add

exprSource

Expr expr

isStmtSource

override Bool isStmt()

Overrides compiler::Expr.isStmt

Doc inherited from compiler::Expr.isStmt

Does this expression make up a complete statement. If you override this to true, then you must make sure the expr is popped in CodeAsm.

makeSource

new make(WithBlockExpr withBlock, Expr expr)

serializeSource

override Str serialize()

Overrides compiler::Expr.serialize

Doc inherited from compiler::Expr.serialize

Return this expression as serialization text or throw exception if not serializable.

toStrSource

override Str toStr()

Overrides compiler::Expr.toStr

Doc inherited from sys::Obj.toStr

Return a string representation of this object.

walkChildrenSource

override Void walkChildren(Visitor v)

Overrides compiler::Expr.walkChildren

withBlockSource

WithBlockExpr withBlock