# Package-leveldeclarations

## Types

Bound types of intervals. See wikipedia article of intervals.

interface DefinableDomain<T : Comparable<*>>

Classes which have definable domain. See wikipedia article on domain of a function.

class Range<T : Comparable<*>>(range: Range<T>)

Represents a mathematical range. See wikipedia article of interval.

class RangeSet<T : Comparable<*>>(rangeSet: ImmutableRangeSet<T>)

An immutable set of ranges.

interface Tolerable

Classes which have a tolerance.

## Properties

Difference between the upper and lower bound of the Range.

Absolute length between upper and lower bound.

## Functions

fun Range<Double>.arrange(step: Double, includeClosedEndPoint: Boolean = false, tolerance: Double): DoubleArray

Arranges an array of Double with step size.

Returns true, if the list of ranges contains consecutively following ranges that intersect.

Returns true, if the set of ranges contains intersecting Range.

Returns true, if set of RangeSet contains intersecting RangeSet pairs.

fun Range<Double>.fuzzyContains(value: Double, tolerance: Double): Boolean

Returns true, if the value is fuzzily contained within this Range by the tolerance.

fun Range<Double>.fuzzyEncloses(other: Range<Double>, tolerance: Double): Boolean

Returns true, if the other is fuzzily enclosed with a tolerance.

Returns the intersecting Range of a provided set of ranges.

Returns the intersecting RangeSet.

Shifts the Range by a value.

Shift the Range so that the lower endpoint is represented by the value.

fun BoundType.toBoundType(): BoundType

Conversion from Guava Bound Type class.

fun BoundType.toBoundTypeG(): BoundType?

Conversion to Guava Bound Type class.

fun <T : Comparable<*>> Range<T>.toRange(): Range<T>

Conversion from Guava range class.

fun <T : Comparable<*>> ImmutableRangeSet<T>.toRangeSet(): RangeSet<T>

Conversion from Guava range set class.

Conversion to RangeSet.

Union operation of a set of Range to a RangeSet.