base.Block[R]

mut .if(p: mut base.Condition): mut base.BlockIf[R] -> …,
mut .loop(body: mut base.LoopBody[R]): mut base.Block[R] -> …,
mut .var[X$0](x: mut base.ReturnStmt[X$0], cont: mut base.Continuation[mut base.Var[X$0],mut base.Block[R],R]): R -> …,
mut .done: imm base.Void -> …,
mut .assert(p: mut base.Condition): mut base.Block[R] -> …,
mut .assert(p: mut base.Condition, failMsg: imm base.Str): mut base.Block[R] -> …,
mut .return(a: mut base.ReturnStmt[R]): R -> …,
mut .let[X$0](x: mut base.ReturnStmt[X$0], cont: mut base.Continuation[X$0,mut base.Block[R],R]): R -> …,
mut .letIso[X$0](x: X$0, cont: mut base.Continuation[mut X$0,mut base.Block[R],R]): R -> …,
mut .do(r: mut base.ReturnStmt[imm base.Void]): mut base.Block[R] -> …,
mut .if(p: mut base.Condition): mut base.BlockIf[R] -> …,
mut .loop(body: mut base.LoopBody[R]): mut base.Block[R] -> …,
mut .var[X$0](x: mut base.ReturnStmt[X$0], cont: mut base.Continuation[mut base.Var[X$0],mut base.Block[R],R]): R -> …,
mut .done: imm base.Void -> …,
mut .assert(p: mut base.Condition): mut base.Block[R] -> …,
mut .assert(p: mut base.Condition, failMsg: imm base.Str): mut base.Block[R] -> …,
mut .return(a: mut base.ReturnStmt[R]): R -> …,
mut .let[X$0](x: mut base.ReturnStmt[X$0], cont: mut base.Continuation[X$0,mut base.Block[R],R]): R -> …,
mut .letIso[X$0](x: X$0, cont: mut base.Continuation[mut X$0,mut base.Block[R],R]): R -> …,
mut .do(r: mut base.ReturnStmt[imm base.Void]): mut base.Block[R] -> …,