Class UnitForm<T>


  • public final class UnitForm<T>
    extends Form<T>
    • Constructor Detail

      • UnitForm

        public UnitForm​(T unit,
                        Form<T> form)
    • Method Detail

      • tag

        public String tag()
        Description copied from class: Form
        Returns the key of the tag attribute that distinguishes structures of this Form; returns null if this Form has no distinguishing tag attribute. Used to accelerate distrcrimination of polymorphic structural types with nominal type hints.
        Overrides:
        tag in class Form<T>
      • tag

        public Form<T> tag​(String tag)
        Description copied from class: Form
        Returns a version of this Form that requires a head Attr with the given tag name.
        Overrides:
        tag in class Form<T>
      • unit

        public T unit()
        Description copied from class: Form
        Returns a default–possibly null–value of type T. Used as the fallback return value when coercing an invalid structural value.
        Overrides:
        unit in class Form<T>
      • unit

        public Form<T> unit​(T unit)
        Description copied from class: Form
        Returns a version of this Form with the given unit value.
        Overrides:
        unit in class Form<T>
      • type

        public Class<?> type()
        Description copied from class: Form
        Returns the reified Class of type T.
        Specified by:
        type in class Form<T>
      • mold

        public Item mold​(T object,
                         Item item)
        Description copied from class: Form
        Converts a nominally typed Java object into its structurally typed equivalent based on the provided prototype item. The passed-in item is assumed to be non-null. The returned Item must never be null.
        Overrides:
        mold in class Form<T>
      • mold

        public Item mold​(T object)
        Description copied from class: Form
        Converts a nominally typed Java object into its structurally typed equivalent. The returned Item must never be null.
        Specified by:
        mold in class Form<T>
      • cast

        public T cast​(Item item,
                      T object)
        Description copied from class: Form
        Converts a structurally typed item into a nominally typed Java object based on the provided prototype object. The passed-in item is assumed to be non-null. The passed-in prototype object may be null.
        Overrides:
        cast in class Form<T>
      • cast

        public T cast​(Item item)
        Description copied from class: Form
        Converts a structurally typed item into a nominally typed Java object. The passed-in item is assumed to be non-null.
        Specified by:
        cast in class Form<T>