The root of all models. There are several types of models:

- `ClassOrInterface`
- `FunctionModel`
- `ValueModel`

no type hierarchy

no supertypes hierarchy

- `Model` of
  - `ClassOrInterface`
    - `ClassModel`
      - `Class`
      - `MemberClass`
    - `InterfaceModel`
      - `Interface`
      - `MemberInterface`
  - `FunctionModel`
    - `Function`
    - `Method`
  - `ValueModel`
    - `Attribute`
    - `Value`

Attributes
`container` | Source Code `shared formal Type<Anything>? container` The container type of this model, or `null` if this is a toplevel model.
`declaration` | Source Code `shared formal NestableDeclaration declaration` The declaration for this model.

Inherited Attributes
Attributes inherited from: `Object` `Object.hash`, `Object.string`

Inherited Methods
Methods inherited from: `Object` `Object.equals()`