27 bool CashFlow::hasOccurred(
const Date& refDate,
28 ext::optional<bool> includeRefDate)
const {
31 if (refDate !=
Date()) {
39 if (refDate ==
Date() ||
43 ext::optional<bool> includeToday =
46 includeRefDate = *includeToday;
51 bool CashFlow::tradingExCoupon(
const Date& refDate)
const {
Base class for cash flows.
degenerate base class for the Acyclic Visitor pattern
virtual Date exCouponDate() const
returns the date that the cash flow trades exCoupon
Date date() const override=0
virtual void accept(AcyclicVisitor &)
virtual bool hasOccurred(const Date &refDate=Date(), ext::optional< bool > includeRefDate=ext::nullopt) const
returns true if an event has already occurred before a date
DateProxy & evaluationDate()
the date at which pricing is to be performed.
ext::optional< bool > & includeTodaysCashFlows()
static Settings & instance()
access to the unique instance
Visitor for a specific class
virtual void visit(T &)=0
ext::shared_ptr< BlackVolTermStructure > v
global repository for run-time library settings
degenerate base class for the Acyclic Visitor pattern