Package com.io7m.smfj.core

## Interface SMFAttributeType

- All Known Implementing Classes:
    `SMFAttribute`

      @Immutable
      public interface SMFAttributeType

  An attribute.

- - ### Method Summary

    All Methods Instance Methods Abstract Methods Default Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `default void` | `checkPreconditions()` | Check preconditions for the type.
    `int` | `componentCount()` |
    `int` | `componentSizeBits()` |
    `default int` | `componentSizeOctets()` |
    `SMFComponentType` | `componentType()` |
    `SMFAttributeName` | `name()` |
    `default int` | `sizeOctets()` |

- - ### Method Detail

    - #### name

          @Parameter
          SMFAttributeName name()

      Returns:
        The name of the attribute

    - #### componentType

          @Parameter
          SMFComponentType componentType()

      Returns:
        The kind of components that make up the attribute

    - #### componentCount

          @Parameter
          int componentCount()

      Returns:
        The number of components in the attribute

    - #### componentSizeBits

          @Parameter
          int componentSizeBits()

      Returns:
        The size of a single component in bits

    - #### componentSizeOctets

          @Derived
          default int componentSizeOctets()

      Returns:
        The size of a single component in octets

    - #### sizeOctets

          @Derived
          default int sizeOctets()

      Returns:
        The size of the attribute in octets

    - #### checkPreconditions

          @Check
          default void checkPreconditions()

      Check preconditions for the type.