Class DoubleNonNegativeIteratorDecorator

  extended byorg.jmlspecs.jmlunit.strategies.DoubleAbstractIterator
      extended byorg.jmlspecs.jmlunit.strategies.DoubleAbstractFilteringIteratorDecorator
          extended byorg.jmlspecs.jmlunit.strategies.DoubleNonNegativeIteratorDecorator
All Implemented Interfaces:
Cloneable, DoubleIterator, IndefiniteIterator

public class DoubleNonNegativeIteratorDecorator
extends DoubleAbstractFilteringIteratorDecorator

An indefinite iterator that filters out negative test data.

Gary T. Leavens

Class Specifications

Specifications inherited from class DoubleAbstractFilteringIteratorDecorator
public invariant !this.dented ==> (this.atEnd() <==> this.rawElems.atEnd());
public invariant !this.dented ==> (!this.atEnd() ==> this.get().equals(this.rawElems.get()));
public invariant_redundantly !this.dented ==> (!this.atEnd() ==> new java.lang.Double(this.getDouble()).equals(new java.lang.Double(this.rawElems.getDouble())));

Specifications inherited from class Object
represents objectState <- org.jmlspecs.lang.JMLDataGroup.IT;
public represents _getClass <- \typeof(this);

Model Field Summary
Model fields inherited from class java.lang.Object
_getClass, objectState, theString
Ghost Field Summary
Ghost fields inherited from class org.jmlspecs.jmlunit.strategies.DoubleAbstractFilteringIteratorDecorator
Ghost fields inherited from class java.lang.Object
objectTimesFinalized, owner
Field Summary
Fields inherited from class org.jmlspecs.jmlunit.strategies.DoubleAbstractFilteringIteratorDecorator
Constructor Summary
DoubleNonNegativeIteratorDecorator(DoubleIterator iter)
Model Method Summary
Model methods inherited from class java.lang.Object
Method Summary
 boolean approve(double elem)
          Return true just when the argument is not negative.
Methods inherited from class org.jmlspecs.jmlunit.strategies.DoubleAbstractFilteringIteratorDecorator
advance, atEnd, clone, getDouble, initialize, toString
Methods inherited from class org.jmlspecs.jmlunit.strategies.DoubleAbstractIterator
Methods inherited from class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait

Constructor Detail


public DoubleNonNegativeIteratorDecorator(DoubleIterator iter)
public normal_behavior
requires iter != null;
assignable rawElems, objectState;
ensures (* rawElems is a clone of iter *);
Method Detail


public boolean approve(double elem)
Return true just when the argument is not negative.

Specifications: pure
public normal_behavior
assignable \nothing;
ensures \result <==> !(elem < 0.0);
Specifications inherited from overridden method approve(double elem) in class DoubleAbstractFilteringIteratorDecorator:
public normal_behavior
assignable \nothing;


JML is Copyright (C) 1998-2002 by Iowa State University and is distributed under the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This release depends on code from the MultiJava project and is based in part on the Kopi project Copyright (C) 1990-99 DMS Decision Management Systems Ges.m.b.H.