Contains types that define the protocols from the
ANSI Smalltalk standard.
The following conventions were used in defining the ANSI Smalltalk
types.
- All the defined types are included in the package named
org.ansi.smalltalk.
- All the type names use the prevailing Smalltalk class naming
conventions, i.e., mixed case with leading upper case.
- ANY has been renamed Any.
- RECEIVER has been replaced by the appropriate type name based on the
type in which it appears.
- Where a method specification indicates "none" for a Return Value, the
declared method returns void.
- Where a method specification indicates UNSPECIFIED for a Return
Value, the declared method returns Object.
- Where a method specification indicates the return of alternative
types (e.g., Nil or ClassDescription), the declared method returns the nearest
common supertype (usually Object).
- All class and factory protocols are declared as metatypes in the
appropriate subtype.
- Where appropriate, protocols are duplicated in a type and a metatype,
e.g., ClassDescription is a type whose protocols are duplicated in the Object
metatype.
- The ANSI Smalltalk standard specifies refinement method protocols in
subtypes that override similarly named methods in supertypes. However, due to
the limitations of the Java type system, these method refinements are not
declared in the org.ansi.smalltalk types, as they would often create
complier conflicts.