com.io7m.jstructural.core

## Class SFormalItem

- java.lang.Object
- - com.io7m.jstructural.core.SFormalItem

- All Implemented Interfaces:
    SSubsectionContent

      @Immutable
      public final class SFormalItem
      extends Object
      implements SSubsectionContent

  A formal item.

- - ### Method Summary

    All Methods Static Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `boolean` | `equals(Object obj)`
    `static SFormalItem` | `formalItem(SFormalItemTitle in_title, String in_kind, SFormalItemContent in_content)` Construct a new formal item with the given type attribute.
    `static SFormalItem` | `formalItemTyped(SFormalItemTitle in_title, String in_kind, String in_type, SFormalItemContent in_content)` Construct a new formal item with the given type attribute.
    `static SFormalItem` | `formalItemTypedWithID(SFormalItemTitle in_title, String in_kind, String in_type, SFormalItemContent in_content, SID in_id)` Construct a new formal item with the given type attribute.
    `static SFormalItem` | `formalItemWithID(SFormalItemTitle in_title, String in_kind, SFormalItemContent in_content, SID in_id)` Construct a new formal item with the given type attribute.
    `SFormalItemContent` | `getContent()`
    `com.io7m.jfunctional.OptionType<SID>` | `getID()`
    `String` | `getKind()`
    `SFormalItemTitle` | `getTitle()`
    `com.io7m.jfunctional.OptionType<String>` | `getType()`
    `int` | `hashCode()`
    `<A> A` | `subsectionContentAccept(SSubsectionContentVisitor<A> v)` Accept a section content visitor.
    `String` | `toString()`

    - ### Methods inherited from class java.lang.Object

      `clone, finalize, getClass, notify, notifyAll, wait, wait, wait`

- - ### Method Detail

    - #### formalItem

          public static SFormalItem formalItem(SFormalItemTitle in_title,
                                               String in_kind,
                                               SFormalItemContent in_content)

      Construct a new formal item with the given type attribute.
      Parameters:
        `in_title` - The title
        `in_kind` - The kind of formal item
        `in_content` - The formal item content
      Returns:
        A new formal item

    - #### formalItemTyped

          public static SFormalItem formalItemTyped(SFormalItemTitle in_title,
                                                    String in_kind,
                                                    String in_type,
                                                    SFormalItemContent in_content)

      Construct a new formal item with the given type attribute.
      Parameters:
        `in_title` - The title
        `in_kind` - The kind of formal item
        `in_type` - The type attribute
        `in_content` - The formal item content
      Returns:
        A new formal item

    - #### formalItemTypedWithID

          public static SFormalItem formalItemTypedWithID(SFormalItemTitle in_title,
                                                          String in_kind,
                                                          String in_type,
                                                          SFormalItemContent in_content,
                                                          SID in_id)

      Construct a new formal item with the given type attribute.
      Parameters:
        `in_title` - The title
        `in_kind` - The kind of formal item
        `in_type` - The type attribute
        `in_content` - The formal item content
        `in_id` - The ID
      Returns:
        A new formal item
      Since:
        4.0.0

    - #### formalItemWithID

          public static SFormalItem formalItemWithID(SFormalItemTitle in_title,
                                                     String in_kind,
                                                     SFormalItemContent in_content,
                                                     SID in_id)

      Construct a new formal item with the given type attribute.
      Parameters:
        `in_title` - The title
        `in_kind` - The kind of formal item
        `in_content` - The formal item content
        `in_id` - The ID
      Returns:
        A new formal item
      Since:
        4.0.0

    - #### equals

          public boolean equals(@Nullable
                                Object obj)

      Overrides:
        `equals` in class `Object`

    - #### getContent

          public SFormalItemContent getContent()

      Returns:
        The formal item content

    - #### getID

          public com.io7m.jfunctional.OptionType<SID> getID()

      Returns:
        The ID of the element, if any.

    - #### getKind

          public String getKind()

      Returns:
        The kind of formal item

    - #### getTitle

          public SFormalItemTitle getTitle()

      Returns:
        The formal item title

    - #### getType

          public com.io7m.jfunctional.OptionType<String> getType()

      Returns:
        The formal item type attribute, if specified

    - #### hashCode

          public int hashCode()

      Overrides:
        `hashCode` in class `Object`

    - #### subsectionContentAccept

          public <A> A subsectionContentAccept(SSubsectionContentVisitor<A> v)
                                        throws Exception

      Description copied from interface: `SSubsectionContent`
      Accept a section content visitor.
      Specified by:
        `subsectionContentAccept` in interface `SSubsectionContent`
      Type Parameters:
        `A` - The type of values returned by the visitor
      Parameters:
        `v` - The visitor
      Returns:
        The value returned by the visitor.
      Throws:
        `Exception` - If the visitor raises and `Exception`

    - #### toString

          public String toString()

      Overrides:
        `toString` in class `Object`

Copyright © 2015 <code@io7m.com> http://io7m.com