Class TypeDefinition

  • All Implemented Interfaces:
    java.io.Serializable, java.lang.Comparable<TypeDefinition>

    public class TypeDefinition
    extends java.lang.Object
    implements java.io.Serializable, java.lang.Comparable<TypeDefinition>
    A type-level definition, including a name and the type scheme
    See Also:
    Serialized Form
    • Field Detail

      • TYPE_

        public static final Name TYPE_
        Name of the hydra.packaging.TypeDefinition type.
      • NAME

        public static final Name NAME
        Name of the hydra.packaging.TypeDefinition.name field.
      • METADATA

        public static final Name METADATA
        Name of the hydra.packaging.TypeDefinition.metadata field.
      • BODY

        public static final Name BODY
        Name of the hydra.packaging.TypeDefinition.body field.
      • name

        public final Name name
        The name of the type
      • metadata

        public final Optional<EntityMetadata> metadata
        Optional documentation and lifecycle metadata for the type definition
      • body

        public final TypeScheme body
        The type scheme being defined
    • Constructor Detail

      • TypeDefinition

        public TypeDefinition​(Name name,
                              Optional<EntityMetadata> metadata,
                              TypeScheme body)
        Constructs an immutable TypeDefinition.
        Parameters:
        name - The name of the type
        metadata - Optional documentation and lifecycle metadata for the type definition
        body - The type scheme being defined