![]() |
Section 8.2.2.1: |
immutable class BIT < $IS_EQ
Formal Types
types
SAME = BIT ;
BIT = token
This class is a slight enhancement of the pervasive class BIT which has no conversion facilities (create and card below). It provides the binary digit object which is the fundamental component of all objects defined in a computer system. The two possible values are setbit and clearbit.
NOTES | 1. The corresponding pervasive class has no inheritance - because it is pervasive! |
2. This class is defined in such a way that an implementation is not required to specify in what way the object is implemented, nor, indeed, to specify that it will always have the same implementation representation. Any use which attempts to rely on some particular representation is erroneous. |
Formal Signature
create(val : CARD) res : BIT
Post-condition
res.set = (val = 1)
This creation routine is really a conversion from a numeric value to a bit value. If the numeric value is 1 then the bit value is setbit, otherwise clearbit.
Formal Signature
card(self : SAME) res : CARD
Post-condition
((res = 0)
and self.clear)
or ((res = 1)
and self.set)
This conversion routine returns 1 if self is set, otherwise zero.
Formal Signature
is_eq(self : SAME, other : SAME) res : BOOL
Post-condition
res = (self = other)
This predicate returns true if and only if self and other have the same value, otherwise false.
Formal Signature
set(self : SAME) res : BOOL
Post-condition
res = (self = setbit)
This predicate returns true if and only if self has the value setbit, otherwise false.
Formal Signature
clear(self : SAME) res : BOOL
Post-condition
res = (self = clearbit)
This predicate returns true if and only if self has the value clearbit, otherwise false.
![]() |
Language Index | ![]() |
Library Index | ![]() |
Binary Index |
Comments or enquiries should be made to
Keith
Hopper. Page last modified: Wednesday, 22 March 2000. |
![]() |