imperativeCapabilities
org.combinators.ep.language.java.paradigm.Imperative.imperativeCapabilities
object imperativeCapabilities extends ImperativeCapabilities
Attributes
- Graph
-
- Supertypes
- Self type
-
Members list
Value members
Inherited methods
def assignVar(variable: Imperative.this.base.syntax.Expression, value: Imperative.this.base.syntax.Expression): Generator[Imperative.this.Context, Imperative.this.base.syntax.Statement]
Attributes
- Inherited from:
- ImperativeCapabilities
def declareVar(name: Imperative.this.base.syntax.Name, tpe: Imperative.this.base.syntax.Type, init: Option[Imperative.this.base.syntax.Expression] = ...): Generator[Imperative.this.Context, Imperative.this.base.syntax.Expression]
Attributes
- Inherited from:
- ImperativeCapabilities
def ifThenElse(condition: Imperative.this.base.syntax.Expression, ifBranch: Generator[Imperative.this.Context, Unit], elseIfs: Seq[(Imperative.this.base.syntax.Expression, Generator[Imperative.this.Context, Unit])], elseBranch: Option[Generator[Imperative.this.Context, Unit]] = ...): Generator[Imperative.this.Context, Imperative.this.base.syntax.Statement]
Attributes
- Inherited from:
- ImperativeCapabilities
def liftExpression(expr: Imperative.this.base.syntax.Expression): Generator[Imperative.this.Context, Imperative.this.base.syntax.Statement]
Attributes
- Inherited from:
- ImperativeCapabilities
def liftReturnStmt(expGen: Generator[Imperative.this.Context, Imperative.this.base.syntax.Expression]): Generator[Imperative.this.Context, Imperative.this.base.syntax.Statement]
Attributes
- Inherited from:
- ImperativeCapabilities
def returnStmt(exp: Imperative.this.base.syntax.Expression): Generator[Imperative.this.Context, Imperative.this.base.syntax.Statement]
Attributes
- Inherited from:
- ImperativeCapabilities
def whileLoop(condition: Imperative.this.base.syntax.Expression, block: Generator[Imperative.this.Context, Unit]): Generator[Imperative.this.Context, Imperative.this.base.syntax.Statement]
Attributes
- Inherited from:
- ImperativeCapabilities
Implicits
Implicits
implicit val canAssignVariable: Understands[Imperative.this.Ctxt, AssignVariable[Imperative.this.base.syntax.Expression, Imperative.this.base.syntax.Statement]]
implicit val canDeclareVariable: Understands[Imperative.this.Ctxt, DeclareVariable[Imperative.this.base.syntax.Name, Imperative.this.base.syntax.Type, Option[Imperative.this.base.syntax.Expression], Imperative.this.base.syntax.Expression]]
implicit val canIfThenElse: Understands[Imperative.this.Ctxt, IfThenElse[Imperative.this.base.syntax.Expression, Generator[Imperative.this.Ctxt, Unit], Option[Generator[Imperative.this.Ctxt, Unit]], Imperative.this.base.syntax.Statement]]
implicit val canLiftExpression: Understands[Imperative.this.Ctxt, LiftExpression[Imperative.this.base.syntax.Expression, Imperative.this.base.syntax.Statement]]
implicit val canReturn: Understands[Imperative.this.Ctxt, Return[Imperative.this.base.syntax.Expression, Imperative.this.base.syntax.Statement]]
implicit val canWhile: Understands[Imperative.this.Ctxt, While[Imperative.this.Ctxt, Imperative.this.base.syntax.Expression, Imperative.this.base.syntax.Statement]]
In this article