com.io7m.jstructural.annotated

## Class SADocument

- java.lang.Object
- - com.io7m.jstructural.annotated.SADocument

- All Implemented Interfaces:
    SASegmentsReadable
  Direct Known Subclasses:
    SADocumentWithParts, SADocumentWithSections

      public abstract class SADocument
      extends Object
      implements SASegmentsReadable

  A document.

- - ### Constructor Summary

    Constructors
    Modifier | Constructor and Description
    --- | ---
    `protected` | `SADocument(SAIDMap in_ids, SADocumentTitle in_title, com.io7m.jfunctional.OptionType<SDocumentContents> in_contents, com.io7m.jfunctional.OptionType<SDocumentStyle> in_style, List<SAFootnote> in_footnotes, SAFormalItemsByKind in_formals)`

  - ### Method Summary

    All Methods Instance Methods Abstract Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `abstract <A> A` | `documentAccept(SADocumentVisitor<A> v)` Accept a document visitor.
    `boolean` | `equals(Object obj)`
    `com.io7m.jfunctional.OptionType<SDocumentContents>` | `getContents()`
    `List<SAFootnote>` | `getFootnotes()`
    `SAFormalItemsByKindReadable` | `getFormals()`
    `SAIDMapReadable` | `getIDMappings()`
    `abstract com.io7m.jfunctional.OptionType<SASection>` | `getSection(SASectionNumber n)`
    `com.io7m.jfunctional.OptionType<SDocumentStyle>` | `getStyle()`
    `SADocumentTitle` | `getTitle()`
    `int` | `hashCode()`

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

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

    - ### Methods inherited from interface com.io7m.jstructural.annotated.SASegmentsReadable

      `segmentGetFirst, segmentGetNext, segmentGetPrevious, segmentGetUp`

- - ### Constructor Detail

    - #### SADocument

          protected SADocument(SAIDMap in_ids,
                               SADocumentTitle in_title,
                               com.io7m.jfunctional.OptionType<SDocumentContents> in_contents,
                               com.io7m.jfunctional.OptionType<SDocumentStyle> in_style,
                               List<SAFootnote> in_footnotes,
                               SAFormalItemsByKind in_formals)

  - ### Method Detail

    - #### documentAccept

          public abstract <A> A documentAccept(SADocumentVisitor<A> v)
                                        throws Exception

      Accept a document visitor.
      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 an `Exception`

    - #### equals

          public boolean equals(@Nullable
                                Object obj)

      Overrides:
        `equals` in class `Object`

    - #### getContents

          public final com.io7m.jfunctional.OptionType<SDocumentContents> getContents()

      Returns:
        The document contents

    - #### getFootnotes

          public final List<SAFootnote> getFootnotes()

      Returns:
        The document's footnotes

    - #### getFormals

          public final SAFormalItemsByKindReadable getFormals()

      Returns:
        The formal items by kind

    - #### getIDMappings

          public final SAIDMapReadable getIDMappings()

      Returns:
        The set of mappings from IDs to elements

    - #### getSection

          public abstract com.io7m.jfunctional.OptionType<SASection> getSection(SASectionNumber n)

      Parameters:
        `n` - The section number
      Returns:
        The section with the given section number, if any.

    - #### getStyle

          public final com.io7m.jfunctional.OptionType<SDocumentStyle> getStyle()

      Returns:
        The document style

    - #### getTitle

          public final SADocumentTitle getTitle()

      Returns:
        The document title

    - #### hashCode

          public int hashCode()

      Overrides:
        `hashCode` in class `Object`

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