Skip to content

Latest commit

 

History

History
12 lines (8 loc) · 599 Bytes

ii.10-defining-types.md

File metadata and controls

12 lines (8 loc) · 599 Bytes

II.10 Defining types

Types (i.e., classes, value types, and interfaces) can be defined at the top-level of a module:

Decl ::=
.class ClassHeader '{' ClassMember* '}'
| …

The logical metadata table created by this declaration is specified in §II.22.37.

[Rationale: For historical reasons, many of the syntactic categories used for defining types incorrectly use “class" instead of "type" in their name. All classes are types, but "types" is a broader term encompassing value types, and interfaces as well. end rationale]