|   | Section 8.3:Code Classes
 |  | 
  
 
This section of the Required Library contains definitions of those
abstractions and classes which define encodings of glyphs of various kinds.
The concept of code conversion and the necessary mappings to do this also
naturally falls into this section of the library.   Note that encodings which
may be used are those registered in the international character code registry
in addition to those specified by international standards.
  - Abstract Classes - 
      - $CODE_MAPPER - this abstraction models a
        mapper from/to unicode (ISO/IEC
        10646 standard) codes using an externally provided mapping
      object.
- $CODE_CONVERTER - this abstraction
        models an object capable of converting to/from any known
      encoding.
 
- Immutable Classes - 
      - SCRIPTS - this is an enumeration of all
        of the different scripts which are defined in (ISO/IEC 10646.
- CODE_KINDS - an enumeration of all of
        the internationally registered character encoding kinds.
- CHAR_CODE - the encoding of a character
        in a single code together with its LIBCHARS component (needed when
        converting from one code to another).
- CONTROL_CODES - codes which are
        specified in ISO 6429 as being
        formatting or other control codes which may be found in a character
        stream and the interpreting program may take indicated action in
        respect of the code found.
- UNICODE - this class provides various
        classification functions in respect of ISO/IEC 10646 character
      codes.
- UCS4 - this is a 'renaming' of the above
        class  for the canonical four octet encoding model.
- UCS2 - this is a 'renaming' of the above
        class for the canonical two octet Basic Multi-Lingual Plane (BMP)
        encoding model.
- UTF7 - this is a form of code which permits
        multiple octet codes to be passed over an eight-bit code channel.  To
        be precise, this is the form of character encoding which a portable
        operating system interface must provide for all entity (eg files,
        directories, devices) names which may be used by programs executing
        under that operating system.
- CASE_MAPLET - this class implements
        the notion of case conversion (between upper and lower cases) for
        those scripts which use more than one 'case'.
        
          The remaining group of immutable classes correspond to codes
          written to the binary map files which are available internationally.
          [The format of these files has not yet been
          standardised!] 
 
- MAP_PARTS - .  This is an enumeration
        for a code in binary map files.
- MAP_MODES - (see above) This is another
        enumeration specifying the 'compression' mode in which a mapping file
        section has been written.  It corresponds to a code found on binary
        map files.
- INFO_KINDS - (see above) This
        enumeration identifies the header components to be found on binary map
        files.
 
- Reference Classes - 
      - MAP_FILE - (see above) This is the map
        file object class.
- MAP_HEADER - (see above) This is the
        map file header which may contain useful textual information - if such
        was found on the map file.
- CODE_MAPPER - an entity which will
        carry out single conversions from/to a particular encoding and ISO/IEC 10646 (often referred to
        as Unicode although there is a technical difference between the two
        specifications - not involving the code bit-patterns)
- CODE_CONVERTER - an entity which
        can convert from any encoding known in the CODE_KINDS enumeration to any other
        encoding in that list.
 
 
  
    
      | Comments
        or enquiries should be made to Keith Hopper. Page last modified:  Friday, 10 March 2000.
 |   |