org.jmlspecs.samples.reader
Class BlankReader
java.lang.Object
org.jmlspecs.samples.reader.BufferedReader
org.jmlspecs.samples.reader.BlankReader
- All Implemented Interfaces:
- Reader
- public class BlankReader
- extends BufferedReader
A reader that delivers a stream of blanks.
- Author:
- Arnd Poetzsch-Heffter
from an example by K. Rustan M. Leino and Greg Nelson, in
Data abstraction and information hiding,
ACM Transactions on Programming Languages and Systems,
Volume 24, number 5, pp. 491-553, September 2002.
Class Specifications |
private represents svalid <- this.hi <= this.num; |
Specifications inherited from class BufferedReader |
public represents valid <- this != null&&0 <= this.lo&&this.lo <= this.cur&&this.cur <= this.hi&&this.buff != null&&this.hi-this.lo <= this.buff.length&&this.svalid; |
Specifications inherited from class Object |
represents objectState <- org.jmlspecs.lang.JMLDataGroup.IT;
public represents _getClass <- \typeof(this); |
Model fields inherited from interface org.jmlspecs.samples.reader.Reader |
state, valid |
Field Summary |
private int |
num
|
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
num
private int num
- Specifications:
is in groups: state svalid
BlankReader
public BlankReader(int n)
- Specifications:
-
public normal_behavior
requires 0 <= n;
assignable valid, state;
ensures this.valid&&this.svalid;
refill
public void refill()
- Specifications inherited from overridden method in class BufferedReader:
-
public normal_behavior
requires this.valid;
assignable state;
ensures this.cur == \old(this.cur);
close
public void close()
- Specifications inherited from overridden method in interface Reader:
-
public normal_behavior
requires this.valid;
assignable valid, state;
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.