Enum phile::sqir::ComplexTypeKind [] [src]

pub enum ComplexTypeKind {
    Value,
    Entity,
    Function,
}

A bit of terminology:

  • Complex types include enum, struct, class, tuple, and function types.
  • Recursive but not complex types are pointers, optionals, and arrays.
  • Placeholders are temporaries that stand in for named types.
  • The rest of the types are called atomic or simple. They include numeric types (bool, integral, floating-point), Strings, Dates and Blobs.
  • User-defined types are enums, structs and classes.
  • Named types are also enums, structs and classes, along with the built-in types (e.g. numeric types, strings, etc.).
  • Product types are structs, classes and tuples.
  • Value types are enums, structs, and tuples, along with the built-in types.
  • Entity types are only classes (for now).
  • Function types are… function types, obviously.

Variants

A complex type that is a value type: struct, enum, tuple

A complex type that is an entity type: currently, only class.

A complex type that is a function type.

Trait Implementations

impl Debug for ComplexTypeKind
[src]

[src]

Formats the value using the given formatter.

impl Clone for ComplexTypeKind
[src]

[src]

Returns a copy of the value. Read more

1.0.0
[src]

Performs copy-assignment from source. Read more

impl Copy for ComplexTypeKind
[src]

impl PartialEq for ComplexTypeKind
[src]

[src]

This method tests for self and other values to be equal, and is used by ==. Read more

1.0.0
[src]

This method tests for !=.

impl Eq for ComplexTypeKind
[src]

impl PartialOrd for ComplexTypeKind
[src]

[src]

This method returns an ordering between self and other values if one exists. Read more

1.0.0
[src]

This method tests less than (for self and other) and is used by the < operator. Read more

1.0.0
[src]

This method tests less than or equal to (for self and other) and is used by the <= operator. Read more

1.0.0
[src]

This method tests greater than (for self and other) and is used by the > operator. Read more

1.0.0
[src]

This method tests greater than or equal to (for self and other) and is used by the >= operator. Read more

impl Ord for ComplexTypeKind
[src]

[src]

This method returns an Ordering between self and other. Read more

1.22.0
[src]

Compares and returns the maximum of two values. Read more

1.22.0
[src]

Compares and returns the minimum of two values. Read more

impl Hash for ComplexTypeKind
[src]

[src]

Feeds this value into the given [Hasher]. Read more

1.3.0
[src]

Feeds a slice of this type into the given [Hasher]. Read more