public class EiffelStyleLoop extends Object implements NullaryProcedure
new EiffelStyleLoop() .from(new NullaryProcedure() { public void run() {} }) // init code .invariant(new NullaryPredicate() { public boolean test() {} }) // invariants .variant(new NullaryProcedure() { public Object evaluate() {} }) // diminishing comparable value // or // .variant(new NullaryPredicate() { public boolean test() {} }) // more invariants .until(new NullaryPredicate() { public boolean test() {} }) // terminating condition .loop(new NullaryProcedure() { public void run() {} }) // the acutal loop .run();Note that new EiffelStyleLoop().run() executes just fine. You only need to set the parts of the loop you want to use.
Constructor and Description |
---|
EiffelStyleLoop() |
Modifier and Type | Method and Description |
---|---|
EiffelStyleLoop |
from(NullaryProcedure procedure) |
EiffelStyleLoop |
invariant(NullaryPredicate predicate) |
EiffelStyleLoop |
loop(NullaryProcedure procedure) |
void |
run() |
EiffelStyleLoop |
until(NullaryPredicate predicate) |
EiffelStyleLoop |
variant(NullaryFunction<Object> function) |
EiffelStyleLoop |
variant(NullaryPredicate predicate) |
public EiffelStyleLoop()
public EiffelStyleLoop from(NullaryProcedure procedure)
public EiffelStyleLoop invariant(NullaryPredicate predicate)
public EiffelStyleLoop variant(NullaryPredicate predicate)
public EiffelStyleLoop variant(NullaryFunction<Object> function)
public EiffelStyleLoop until(NullaryPredicate predicate)
public EiffelStyleLoop loop(NullaryProcedure procedure)
public void run()
run
in interface Runnable
run
in interface NullaryProcedure
Copyright © 2003–2014 The Apache Software Foundation. All rights reserved.