Search in sources :

Example 21 with NodeCallExpr

use of jkind.lustre.NodeCallExpr in project AGREE by loonwerks.

the class AgreeMakeClockedLustreNodes method visit.

@Override
public Expr visit(NodeCallExpr e) {
    // check to see if we have already made a clocked version of this node
    Node clockedNode = getClockedNode(e.node);
    List<Expr> argList = new ArrayList<>();
    argList.add(new IdExpr(clockVarName));
    argList.add(new IdExpr(initVarName));
    argList.addAll(e.args);
    return new NodeCallExpr(clockedNode.id, acceptList(argList));
}
Also used : BinaryExpr(jkind.lustre.BinaryExpr) UnaryExpr(jkind.lustre.UnaryExpr) Expr(jkind.lustre.Expr) IdExpr(jkind.lustre.IdExpr) NodeCallExpr(jkind.lustre.NodeCallExpr) IfThenElseExpr(jkind.lustre.IfThenElseExpr) IdExpr(jkind.lustre.IdExpr) NodeCallExpr(jkind.lustre.NodeCallExpr) Node(jkind.lustre.Node) ArrayList(java.util.ArrayList)

Aggregations

NodeCallExpr (jkind.lustre.NodeCallExpr)21 Expr (jkind.lustre.Expr)20 IdExpr (jkind.lustre.IdExpr)20 BinaryExpr (jkind.lustre.BinaryExpr)17 BoolExpr (jkind.lustre.BoolExpr)16 UnaryExpr (jkind.lustre.UnaryExpr)15 ArrayList (java.util.ArrayList)13 IfThenElseExpr (jkind.lustre.IfThenElseExpr)13 AgreeVar (com.rockwellcollins.atc.agree.analysis.ast.AgreeVar)9 IntExpr (jkind.lustre.IntExpr)7 RecordAccessExpr (jkind.lustre.RecordAccessExpr)7 TupleExpr (jkind.lustre.TupleExpr)7 AgreeStatement (com.rockwellcollins.atc.agree.analysis.ast.AgreeStatement)6 Node (jkind.lustre.Node)6 ArrayAccessExpr (jkind.lustre.ArrayAccessExpr)5 RealExpr (jkind.lustre.RealExpr)5 CondactExpr (jkind.lustre.CondactExpr)4 VarDecl (jkind.lustre.VarDecl)4 ArrayLiteralExpr (com.rockwellcollins.atc.agree.agree.ArrayLiteralExpr)3 ArraySubExpr (com.rockwellcollins.atc.agree.agree.ArraySubExpr)3