FrequencyAndObject.java
package org.opentrafficsim.core.distributions;
import org.djutils.exceptions.Throw;
/**
* Immutable storage for a frequency (or probability) plus a Generator.
* @param frequency the (<b>not cumulative</b>) frequency (or probability) of the <cite>generatingObject</cite>
* @param object an object
* @param <O> Type of the object returned by the draw method
*/
public record FrequencyAndObject<O>(double frequency, O object)
{
/**
* Constructor.
* @param frequency the (<b>not cumulative</b>) frequency (or probability) of the <cite>generatingObject</cite>
* @param object an object
*/
public FrequencyAndObject
{
Throw.when(frequency < 0.0, IllegalArgumentException.class, "Negative frequency.");
}
}