QuantLib
A free/open-source library for quantitative finance
Reference manual - version 1.20
Classes | Public Member Functions | Protected Member Functions | Protected Attributes | Related Functions | List of all members
DayCounter Class Reference

day counter class More...

#include <ql/time/daycounter.hpp>

+ Inheritance diagram for DayCounter:

Classes

class  Impl
 abstract base class for day counter implementations More...
 

Public Member Functions

 DayCounter ()
 
DayCounter interface
bool empty () const
 Returns whether or not the day counter is initialized.
 
std::string name () const
 Returns the name of the day counter. More...
 
Date::serial_type dayCount (const Date &, const Date &) const
 Returns the number of days between two dates.
 
Time yearFraction (const Date &, const Date &, const Date &refPeriodStart=Date(), const Date &refPeriodEnd=Date()) const
 Returns the period between two dates as a fraction of year.
 

Protected Member Functions

 DayCounter (const ext::shared_ptr< Impl > &impl)
 

Protected Attributes

ext::shared_ptr< Implimpl_
 

Related Functions

(Note that these are not member functions.)

bool operator== (const DayCounter &, const DayCounter &)
 
bool operator!= (const DayCounter &, const DayCounter &)
 
std::ostream & operator<< (std::ostream &, const DayCounter &)
 

Detailed Description

day counter class

This class provides methods for determining the length of a time period according to given market convention, both as a number of days and as a year fraction.

The Bridge pattern is used to provide the base behavior of the day counter.

Examples
BermudanSwaption.cpp, Bonds.cpp, CallableBonds.cpp, ConvertibleBonds.cpp, CVAIRS.cpp, DiscreteHedging.cpp, EquityOption.cpp, FittedBondCurve.cpp, FRA.cpp, MulticurveBootstrapping.cpp, Replication.cpp, and Repo.cpp.

Constructor & Destructor Documentation

◆ DayCounter() [1/2]

DayCounter ( const ext::shared_ptr< Impl > &  impl)
explicitprotected

This constructor can be invoked by derived classes which define a given implementation.

◆ DayCounter() [2/2]

The default constructor returns a day counter with a null implementation, which is therefore unusable except as a placeholder.

Member Function Documentation

◆ name()

std::string name ( ) const

Returns the name of the day counter.

Warning:
This method is used for output and comparison between day counters. It is not meant to be used for writing switch-on-type code.

Friends And Related Function Documentation

◆ operator==()

bool operator== ( const DayCounter ,
const DayCounter  
)
related

Returns true iff the two day counters belong to the same derived class.