AdtDef is an algebraic data type, not abstract data type.

This commit is contained in:
Mazdak Farrokhzad 2019-09-10 18:59:14 +02:00
parent b6269f27d9
commit 2fd4e584a8

View File

@ -1938,9 +1938,15 @@ pub struct FieldDef {
pub vis: Visibility,
}
/// The definition of an abstract data type -- a struct or enum.
/// The definition of a user-defined type, e.g., a `struct`, `enum`, or `union`.
///
/// These are all interned (by `intern_adt_def`) into the `adt_defs` table.
///
/// The initialism *"Adt"* stands for an [*algebraic data type (ADT)*][adt].
/// This is slightly wrong because `union`s are not ADTs.
/// Moreover, Rust only allows recursive data types through indirection.
///
/// [adt]: https://en.wikipedia.org/wiki/Algebraic_data_type
pub struct AdtDef {
/// `DefId` of the struct, enum or union item.
pub did: DefId,