Direct Known Satisfying Interfaces: List<Element>, Map<Key,Item>
All Known Subtypes Hierarchy

- Correspondence
  - List
    - Array
    - LazyList
    - Sequential
      - Empty
        - empty
      - Sequence
        - ArraySequence
        - Range
        - Singleton
        - Tuple
    - String
  - Map
    - LazyMap
    - emptyMap

Abstract supertype of objects which associate values with keys. `Correspondence` does not satisfy `Category`, since in some cases—`List`, for example—it is convenient to consider the subtype a `Category` of its values, and in other cases—`Map`, for example—it is convenient to treat the subtype as a `Category` of its entries.

The item corresponding to a given key may be obtained from a `Correspondence` using the item operator:

    value bg = settings["backgroundColor"] else white;

The `get()` operation and item operator result in an optional type, to reflect the possibility that there is no item for the given key.

By: Gavin
See also: Map, List, Category

Attributes
keys | Source Code shared default Category keys The `Category` of all keys for which a value is defined by this `Correspondence`. See also: Correspondence.defines

Inherited Attributes
Attributes inherited from: Object hash, string

Methods
defines | Source Code shared default Boolean defines(Key key) Determines if there is a value defined for the given key. See also: Correspondence.definesAny, Correspondence.definesEvery, Correspondence.keys
definesAny | Source Code shared default Boolean definesAny({Key*} keys) Determines if this `Correspondence` defines a value for any one of the given keys. See also: Correspondence.defines
definesEvery | Source Code shared default Boolean definesEvery({Key*} keys) Determines if this `Correspondence` defines a value for every one of the given keys. See also: Correspondence.defines
get | Source Code shared formal Item? get(Key key) Returns the value defined for the given key, or `null` if there is no value defined for the given key. See also: Correspondence.items
items | Source Code shared default Item?[] items({Key*} keys) Returns the items defined for the given keys, in the same order as the corresponding keys. See also: Correspondence.get

Inherited Methods
Methods inherited from: Object equals