Пример #1
0
 public For(ActionOnIntVar initialize, IntExprToBoolExpr condition, ActionOnIntVar increment)
 {
     this.initialize=initialize;
       this.condition=condition;
       this.increment=increment;
       this.cookie=FuncBuilder.Instance.StartInflightUtterance("For requires a Do");
 }
Пример #2
0
 public For(ActionOnIntVar initialize, IntExprToBoolExpr condition, ActionOnIntVar increment)
 {
     this.initialize = initialize;
     this.condition  = condition;
     this.increment  = increment;
     this.cookie     = FuncBuilder.Instance.StartInflightUtterance("For requires a Do");
 }
Пример #3
0
        public void Do(ActionOnIntVar body)
        {
            var f=FuncBuilder.Instance;
              f.FinishInflightUtterance(cookie);

              using(f.OpenScope("for")) {
            var loopIndex=f.Declare.Int("loopIndex");
            initialize(loopIndex);
            f.While(condition(loopIndex))
              .Do(() => {
            body(loopIndex);
            increment(loopIndex);
              });
              }
        }
Пример #4
0
        public void Do(ActionOnIntVar body)
        {
            var f = FuncBuilder.Instance;

            f.FinishInflightUtterance(cookie);

            using (f.OpenScope("for")) {
                var loopIndex = f.Declare.Int("loopIndex");
                initialize(loopIndex);
                f.While(condition(loopIndex))
                .Do(() => {
                    body(loopIndex);
                    increment(loopIndex);
                });
            }
        }
Пример #5
0
 public For For(ActionOnIntVar initialize, IntExprToBoolExpr condition, ActionOnIntVar increment)
 {
     return new For(initialize, condition, increment);
 }
Пример #6
0
 public For For(ActionOnIntVar initialize, IntExprToBoolExpr condition, ActionOnIntVar increment)
 {
     return(new For(initialize, condition, increment));
 }