25#ifndef quantlib_payoff_hpp
26#define quantlib_payoff_hpp
28#include <ql/types.hpp>
29#include <ql/patterns/visitor.hpp>
30#include <ql/errors.hpp>
57 virtual std::string
name()
const = 0;
75 QL_FAIL(
"not a payoff visitor");
degenerate base class for the Acyclic Visitor pattern
Abstract base class for option payoffs.
virtual ~Payoff()=default
virtual void accept(AcyclicVisitor &)
virtual Real operator()(Real price) const =0
virtual std::string description() const =0
virtual std::string name() const =0
QL_DEPRECATED typedef Real argument_type
QL_DEPRECATED typedef Real result_type
Visitor for a specific class
virtual void visit(T &)=0