Validate.notNull(swaption);
Validate.notNull(curves);
if (curves instanceof SABRInterestRateDataBundle) {
final SABRInterestRateDataBundle sabr = (SABRInterestRateDataBundle) curves;
final SwaptionPhysicalFixedIborSABRMethod method = SwaptionPhysicalFixedIborSABRMethod.getInstance();
return method.presentValue(swaption, sabr).getAmount();
}
throw new UnsupportedOperationException("The PresentValueSABRCalculator visitor visitSwaptionPhysicalFixedIbor requires a SABRInterestRateDataBundle as data.");
}