JML

org.jmlspecs.jmlunit.strategies
Class LongNonNegativeIteratorDecorator

java.lang.Object
  extended byorg.jmlspecs.jmlunit.strategies.LongAbstractIterator
      extended byorg.jmlspecs.jmlunit.strategies.LongAbstractFilteringIteratorDecorator
          extended byorg.jmlspecs.jmlunit.strategies.LongNonNegativeIteratorDecorator
All Implemented Interfaces:
Cloneable, IndefiniteIterator, LongIterator

public class LongNonNegativeIteratorDecorator
extends LongAbstractFilteringIteratorDecorator

An indefinite iterator that filters out negative test data.

Author:
Gary T. Leavens

Class Specifications

Specifications inherited from class LongAbstractFilteringIteratorDecorator
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.Long(this.getLong()).equals(new java.lang.Long(this.rawElems.getLong())));

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.LongAbstractFilteringIteratorDecorator
dented
 
Ghost fields inherited from class java.lang.Object
objectTimesFinalized, owner
 
Field Summary
 
Fields inherited from class org.jmlspecs.jmlunit.strategies.LongAbstractFilteringIteratorDecorator
rawElems
 
Constructor Summary
LongNonNegativeIteratorDecorator(LongIterator iter)
           
 
Model Method Summary
 
Model methods inherited from class java.lang.Object
hashValue
 
Method Summary
 boolean approve(long elem)
          Return true just when the argument is not negative.
 
Methods inherited from class org.jmlspecs.jmlunit.strategies.LongAbstractFilteringIteratorDecorator
advance, atEnd, clone, getLong, initialize, toString
 
Methods inherited from class org.jmlspecs.jmlunit.strategies.LongAbstractIterator
get
 
Methods inherited from class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

LongNonNegativeIteratorDecorator

public LongNonNegativeIteratorDecorator(LongIterator iter)
Specifications:
public normal_behavior
requires iter != null;
assignable rawElems, objectState;
ensures (* rawElems is a clone of iter *);
Method Detail

approve

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

Specifications: pure
     also
public normal_behavior
assignable \nothing;
ensures \result <==> !(elem < 0);
Specifications inherited from overridden method approve(long elem) in class LongAbstractFilteringIteratorDecorator:
       pure
public normal_behavior
assignable \nothing;

JML

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.