Package generic

# Enum Class ULongSpan.Domain

java.lang.Object
java.lang.Enum<ULongSpan.Domain>
generic.ULongSpan.Domain

All Implemented Interfaces:
  `Span.Domain<Long,ULongSpan>`, `Serializable`, `Comparable<ULongSpan.Domain>`, `Constable`

Enclosing interface:
  ULongSpan

public static enum ULongSpan.Domain extends Enum<ULongSpan.Domain> implements Span.Domain<Long,ULongSpan>
The domain of unsigned longs

- ## Nested Class Summary

  ## Nested classes/interfaces inherited from class java.lang.Enum

  `Enum.EnumDesc<E extends Enum<E>>`

- ## Enum Constant Summary

  Enum Constants
  Enum Constant
  Description
  `INSTANCE`

- ## Method Summary

  Modifier and Type
  Method
  Description
  `ULongSpan`
  `all()`
  Get the span containing all values in the domain
  `int`
  `compare(Long n1, Long n2)`
  Compare two values
  `Long`
  `dec(Long n)`
  Get a given value, decremented by 1
  `ULongSpan`
  `empty()`
  Get the span that contains no value, nor has any endpoints
  `Long`
  `inc(Long n)`
  Get a given value, incremented by 1
  `Long`
  `max()`
  Get the maximum value in the domain
  `Long`
  `min()`
  Get the minimum value in the domain
  `ULongSpan`
  `newSpan(Long min, Long max)`
  Factory method for a new span after arguments are validated
  `String`
  `toString(Long n)`
  Render the given value as a string
  `static ULongSpan.Domain`
  `valueOf(String name)`
  Returns the enum constant of this class with the specified name.
  `static ULongSpan.Domain[]`
  `values()`
  Returns an array containing the constants of this enum class, in the order they are declared.

  ### Methods inherited from class java.lang.Enum

  `clone, compareTo, describeConstable, equals, finalize, getDeclaringClass, hashCode, name, ordinal, toString, valueOf`

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

  `getClass, notify, notifyAll, wait, wait, wait`

  ### Methods inherited from interface generic.Span.Domain

  `atLeast, atMost, bound, closed, encloses, intersect, intersects, max, min, subtract, toMaxString, toMinString, toString, value`

- ## Enum Constant Details

  - ### INSTANCE

    public static final ULongSpan.Domain INSTANCE

- ## Method Details

  - ### values

    public static ULongSpan.Domain[] values()
    Returns an array containing the constants of this enum class, in the order they are declared.
    Returns:
      an array containing the constants of this enum class, in the order they are declared

  - ### valueOf

    public static ULongSpan.Domain valueOf(String name)
    Returns the enum constant of this class with the specified name. The string must match exactly an identifier used to declare an enum constant in this class. (Extraneous whitespace characters are not permitted.)
    Parameters:
      `name` - the name of the enum constant to be returned.
    Returns:
      the enum constant with the specified name
    Throws:
      `IllegalArgumentException` - if this enum class has no constant with the specified name
      `NullPointerException` - if the argument is null

  - ### newSpan

    public ULongSpan newSpan(Long min, Long max)
    Description copied from interface: `Span.Domain`
    Factory method for a new span after arguments are validated
    Specified by:
      `newSpan` in interface `Span.Domain<Long,ULongSpan>`
    Parameters:
      `min` - the lower endpoint
      `max` - the upper endpoint
    Returns:
      the span

  - ### all

    public ULongSpan all()
    Description copied from interface: `Span.Domain`
    Get the span containing all values in the domain
    Specified by:
      `all` in interface `Span.Domain<Long,ULongSpan>`
    Returns:
      the span

  - ### empty

    public ULongSpan empty()
    Description copied from interface: `Span.Domain`
    Get the span that contains no value, nor has any endpoints

    This span is returned when the result doesn't exist, e.g., when finding the intersection of spans which do not intersect.

    Specified by:
      `empty` in interface `Span.Domain<Long,ULongSpan>`
    Returns:
      the empty span

  - ### toString

    public String toString(Long n)
    Description copied from interface: `Span.Domain`
    Render the given value as a string
    Specified by:
      `toString` in interface `Span.Domain<Long,ULongSpan>`
    Parameters:
      `n` - the value
    Returns:
      the string

  - ### compare

    public int compare(Long n1, Long n2)
    Description copied from interface: `Span.Domain`
    Compare two values
    Specified by:
      `compare` in interface `Span.Domain<Long,ULongSpan>`
    Parameters:
      `n1` - a value
      `n2` - another value
    Returns:
      the result, as in `Comparator.compare(Object, Object)`

  - ### min

    public Long min()
    Description copied from interface: `Span.Domain`
    Get the minimum value in the domain

    This value can also represent negative infinity.

    Specified by:
      `min` in interface `Span.Domain<Long,ULongSpan>`
    Returns:
      the minimum value

  - ### max

    public Long max()
    Description copied from interface: `Span.Domain`
    Get the maximum value in the domain

    This value can also represent positive infinity.

    Specified by:
      `max` in interface `Span.Domain<Long,ULongSpan>`
    Returns:
      the maximum value

  - ### inc

    public Long inc(Long n)
    Description copied from interface: `Span.Domain`
    Get a given value, incremented by 1

    If the resulting value would exceed `Span.Domain.max()`, this should wrap to `Span.Domain.min()`.

    Specified by:
      `inc` in interface `Span.Domain<Long,ULongSpan>`
    Parameters:
      `n` - the value
    Returns:
      the value incremented

  - ### dec

    public Long dec(Long n)
    Description copied from interface: `Span.Domain`
    Get a given value, decremented by 1

    If the resulting value would exceed `Span.Domain.min()`, this should wrap to `Span.Domain.max()`.

    Specified by:
      `dec` in interface `Span.Domain<Long,ULongSpan>`
    Parameters:
      `n` - the value
    Returns:
      the value decremented