com.clarkparsia.pellet.datatypes
Interface DataRange<T>

All Known Subinterfaces:
RestrictedDatatype<T>
All Known Implementing Classes:
DataValueEnumeration, EmptyDataRange, EmptyRestrictedDatatype, NegatedDataRange, RestrictedBooleanDatatype, RestrictedDurationDatatype, RestrictedFloatingPointDatatype, RestrictedFloatingPointDatatype, RestrictedRealDatatype, RestrictedRealDatatype, RestrictedTextDatatype, RestrictedTimelineDatatype, RestrictedURIDatatype, UnionDataRange

public interface DataRange<T>

Title: Data Range

Description: Data range interface shared by all data ranges (restricted datatypes, enumerations, etc.)

Copyright: Copyright (c) 2009

Company: Clark & Parsia, LLC.

Author:
Mike Smith

Method Summary
 boolean contains(java.lang.Object value)
          Check if a data range contains a particular value
 boolean containsAtLeast(int n)
          Check that a data range contains a minimum number of elements
 T getValue(int i)
          Deprecated. Use valueIterator()
 boolean isEmpty()
          Convenience method equivalent to !containsAtLeast(0)
 boolean isEnumerable()
          Query if values in the data range can be enumerated.
 boolean isFinite()
          Query if there are a finite number of values in the data range.
 int size()
          Deprecated. Use containsAtLeast(int)
 java.util.Iterator<T> valueIterator()
          Get a (possibly infinite) iterator over values in the data range.
 

Method Detail

contains

boolean contains(java.lang.Object value)
Check if a data range contains a particular value

Parameters:
value - the value to check
Returns:
true if the data range contains value, false else

containsAtLeast

boolean containsAtLeast(int n)
Check that a data range contains a minimum number of elements

Parameters:
n - the number of elements
Returns:
true if the data range contains n or more elements, false otherwise

isEmpty

boolean isEmpty()
Convenience method equivalent to !containsAtLeast(0)

Returns:
true if the data range contains no elements, false otherwise

isEnumerable

boolean isEnumerable()
Query if values in the data range can be enumerated.

Returns:
true if the data range is enumerable, false otherwise

isFinite

boolean isFinite()
Query if there are a finite number of values in the data range.

Returns:
true if the data range is finite, false otherwise

size

int size()
Deprecated. Use containsAtLeast(int)

Return the size of the data range. Necessary to support LiteralValueBranch constructor

Returns:
the size of the data range
Throws:
java.lang.IllegalStateException - if isFinite() returns false

getValue

T getValue(int i)
Deprecated. Use valueIterator()

Return a value from an enumerable data range. Necessary to support LiteralValueBranch shiftTryNext

Parameters:
i - the index of the value in the data range
Returns:
the value
Throws:
java.lang.IllegalStateException - if isEnumerable() returns false

valueIterator

java.util.Iterator<T> valueIterator()
Get a (possibly infinite) iterator over values in the data range.

Returns:
an Iterator
Throws:
java.lang.IllegalStateException - if isEnumerable() returns false


Copyright © 2004 Evren Sirin. All Rights Reserved.