OptaPlanner core 6.2.0.Beta1

org.optaplanner.core.api.domain.valuerange
Interface CountableValueRange<T>

All Superinterfaces:
ValueRange<T>
All Known Implementing Classes:
AbstractCountableValueRange, BigDecimalValueRange, CompositeCountableValueRange, EmptyValueRange, IntValueRange, ListValueRange, NullableCountableValueRange

public interface CountableValueRange<T>
extends ValueRange<T>

An implementation must extend AbstractCountableValueRange to ensure backwards compatibility in future versions.

See Also:
ValueRangeFactory, ValueRange, AbstractCountableValueRange

Method Summary
 Iterator<T> createOriginalIterator()
          Select the elements in original (natural) order.
 T get(long index)
          Used by uniform random selection in a composite or nullable CountableValueRange.
 long getSize()
          Used by uniform random selection in a composite or nullable CountableValueRange.
 
Methods inherited from interface org.optaplanner.core.api.domain.valuerange.ValueRange
contains, createRandomIterator
 

Method Detail

getSize

long getSize()
Used by uniform random selection in a composite or nullable CountableValueRange.

Returns:
the exact number of elements generated by this CountableValueRange, always >= 0

get

T get(long index)
Used by uniform random selection in a composite or nullable CountableValueRange.

Parameters:
index - always < getSize()
Returns:
sometimes null (if PlanningVariable.nullable() is true)

createOriginalIterator

Iterator<T> createOriginalIterator()
Select the elements in original (natural) order.

Returns:
never null

OptaPlanner core 6.2.0.Beta1

Copyright © 2006-2014 JBoss by Red Hat. All Rights Reserved.