class DoubleCondition extends BasicCondition<Double, DoubleCondition> implements FloatingPointChecks<Double, DoubleCondition> {

	@Override
	public DoubleCondition isNearWithTolerance(Double floatingPointNumber, Double tolerance)
	{
		require(this.subject).isNotNull();
		require(floatingPointNumber).isNotNull();

		if (!(Math.abs(this.subject - floatingPointNumber) < tolerance))
		{
			DbcAssertionError.throwNew(new IllegalArgumentException("Expected double <" + this.subject + "> to be near <" + floatingPointNumber + "> with epsilon <" + tolerance + ">"), this.message);
		}

		return result();
	}

	public  DoubleCondition(Double subject);

}