/** * Copyright (C) 2015 - present by OpenGamma Inc. and the OpenGamma group of companies * * Please see distribution for license. */ package com.opengamma.strata.market.curve.interpolator; /** * The standard set of curve extrapolators. * <p> * These are referenced from {@link CurveExtrapolators} where their name is used to look up an * instance of {@link CurveExtrapolator}. This allows them to be referenced statically like a * constant but also allows them to be redefined and new instances added. */ final class StandardCurveExtrapolators { // Flat extrapolator. public static final CurveExtrapolator FLAT = FlatCurveExtrapolator.INSTANCE; // Linear extrapolator. public static final CurveExtrapolator LINEAR = LinearCurveExtrapolator.INSTANCE; // Log linear extrapolator. public static final CurveExtrapolator LOG_LINEAR = LogLinearCurveExtrapolator.INSTANCE; // Quadratic left extrapolator. public static final CurveExtrapolator QUADRATIC_LEFT = QuadraticLeftCurveExtrapolator.INSTANCE; // Product linear extrapolator. public static final CurveExtrapolator PRODUCT_LINEAR = ProductLinearCurveExtrapolator.INSTANCE; // Exponential extrapolator. public static final CurveExtrapolator EXPONENTIAL = ExponentialCurveExtrapolator.INSTANCE; // Exception extrapolator. public static final CurveExtrapolator EXCEPTION = ExceptionCurveExtrapolator.INSTANCE; // Extrapolator that does no extrapolation and delegates to the interpolator. public static final CurveExtrapolator INTERPOLATOR = InterpolatorCurveExtrapolator.INSTANCE; //------------------------------------------------------------------------- /** * Restricted constructor. */ private StandardCurveExtrapolators() { } }